Skip to main content
Solved

シリンドリカル非球面レンズの最適化

  • August 10, 2022
  • 1 reply
  • 1721 views

Takashi Matsumoto
Fully Spectral
Forum|alt.badge.img+1

バックフォーカス(光源からレンズまでの距離)が既知の非球面シリンドリカルレンズの曲率半径と非球面係数を最適化したいのです。このレンズでは、出射光はy方向のみ平行になるものとします。
どのように最適化を行えばよいでしょうか。

 

Best answer by Takashi Matsumoto

以下では、光源から発散する光のY断面の光束をコリメートするシリンドリカルレンズの最適化例を示します。

 

まず、シリンドリカルレンズを表すことができるOpticStudioで設定可能な面は大きく分けてトロイダル面またはバイコーニック面となります。

それぞれ複数の種類の面が存在しますが、一番基本的なトロイダル面とバイコーニック面についてここでは解説します。それ以外の面につきましては、ヘルプファイルを参照してください。

 

トロイダル面は、以下の様にZY方向に設定した形状を、Y軸に平行な、回転半径分だけ離れた位置の軸を中心に回転して作成する形状です。

この時回転半径を0とすることで、ZY方向にのみ非球面を設定したシリンドリカル形状を表すことが可能ですが、ZX面については非球面を入れることができない特徴があります。

一方バイコーニック面は、以下の様にX方向とY方向で別々の曲率半径及びコーニック係数を取ることができる面を表します。

こちらも同様で、Rxを0と入力することで、Y方向のみの標準面を表すことができますし、バイコーニックゼルニケ面を設定すればそれに加えてゼルニケ係数による非球面項を入力することも可能です。

今回はトロイダル面を使用して、非球面シリンドリカルレンズを設定していきたいと思います。


まず、レンズデータエディタの「0面厚」に既知のバックフォーカス値(光源からレンズまでの距離)を入力します。
下図では第2面がシリンドリカル面を表すトロイダル面として設定しています。
「曲率半径」は、YZ面内の曲率半径を表し、2面の「回転半径」は、XZ面内の曲率半径(0は無限大の意味)を表すのは、上記の通りです。


システムエクスプローラのアパチャーにて、発散する光の角度を「物空間でのNA」または「物側円錐半角」のアパチャータイプに設定することで、絞り面の大きさに関係なく設定することが可能です。
また、像面にはコリメートされた光を照射させるのが目的な光学系のため、「アフォーカル像空間」にチェックを以下の様に入れる必要があります。


最適化前のレイアウト図は以下の様になり、ここまでの内容は、添付ファイルの中の Before.zar にて確認してください。

 

さて、ここからBefore.zarで設定したレンズをもとに、像面でY方向の光線が平行となるように、最適化ウィザードで評価関数を作っていきます。

以下の様に「像質」を「角度」とし、X方向の重みを0と設定することで、像面に到達した光のY方向の角度が平行になる評価関数が生成されます。
リング数は今回は非球面項を入力していないので、 5 程度が良いですが、非球面項を設定したい場合は、次数にもよりますがレンズのサグ形状の変曲点がレンズ面上に発生するため、増やす必要性があります。

アームについてはX方向とY方向の曲率の非対称性を効率的に表そうな、4の倍数となる8としていますが、ゼルニケ非球面の使用を考える場合アームの数も増やす必要がありますし、場合によってはご自分で評価関数を付け加える必要があります。

ウィザードの OK ボタンを押すと以下の様に評価関数が生成されます。
 

第2面の曲率半径を変数に指定して最適化を実行します。
すると、下図のように曲率半径が最適化されます。
 

 

上記の結果をAfter.zarというファイルにて添付ファイルにしていますので、確認してください。

非球面項も含めてを最適化にするには、コーニックや非球面係数を変数に設定してください。

View original
Did this topic help you find an answer to your question?

1 reply

Takashi Matsumoto
Fully Spectral
Forum|alt.badge.img+1

以下では、光源から発散する光のY断面の光束をコリメートするシリンドリカルレンズの最適化例を示します。

 

まず、シリンドリカルレンズを表すことができるOpticStudioで設定可能な面は大きく分けてトロイダル面またはバイコーニック面となります。

それぞれ複数の種類の面が存在しますが、一番基本的なトロイダル面とバイコーニック面についてここでは解説します。それ以外の面につきましては、ヘルプファイルを参照してください。

 

トロイダル面は、以下の様にZY方向に設定した形状を、Y軸に平行な、回転半径分だけ離れた位置の軸を中心に回転して作成する形状です。

この時回転半径を0とすることで、ZY方向にのみ非球面を設定したシリンドリカル形状を表すことが可能ですが、ZX面については非球面を入れることができない特徴があります。

一方バイコーニック面は、以下の様にX方向とY方向で別々の曲率半径及びコーニック係数を取ることができる面を表します。

こちらも同様で、Rxを0と入力することで、Y方向のみの標準面を表すことができますし、バイコーニックゼルニケ面を設定すればそれに加えてゼルニケ係数による非球面項を入力することも可能です。

今回はトロイダル面を使用して、非球面シリンドリカルレンズを設定していきたいと思います。


まず、レンズデータエディタの「0面厚」に既知のバックフォーカス値(光源からレンズまでの距離)を入力します。
下図では第2面がシリンドリカル面を表すトロイダル面として設定しています。
「曲率半径」は、YZ面内の曲率半径を表し、2面の「回転半径」は、XZ面内の曲率半径(0は無限大の意味)を表すのは、上記の通りです。


システムエクスプローラのアパチャーにて、発散する光の角度を「物空間でのNA」または「物側円錐半角」のアパチャータイプに設定することで、絞り面の大きさに関係なく設定することが可能です。
また、像面にはコリメートされた光を照射させるのが目的な光学系のため、「アフォーカル像空間」にチェックを以下の様に入れる必要があります。


最適化前のレイアウト図は以下の様になり、ここまでの内容は、添付ファイルの中の Before.zar にて確認してください。

 

さて、ここからBefore.zarで設定したレンズをもとに、像面でY方向の光線が平行となるように、最適化ウィザードで評価関数を作っていきます。

以下の様に「像質」を「角度」とし、X方向の重みを0と設定することで、像面に到達した光のY方向の角度が平行になる評価関数が生成されます。
リング数は今回は非球面項を入力していないので、 5 程度が良いですが、非球面項を設定したい場合は、次数にもよりますがレンズのサグ形状の変曲点がレンズ面上に発生するため、増やす必要性があります。

アームについてはX方向とY方向の曲率の非対称性を効率的に表そうな、4の倍数となる8としていますが、ゼルニケ非球面の使用を考える場合アームの数も増やす必要がありますし、場合によってはご自分で評価関数を付け加える必要があります。

ウィザードの OK ボタンを押すと以下の様に評価関数が生成されます。
 

第2面の曲率半径を変数に指定して最適化を実行します。
すると、下図のように曲率半径が最適化されます。
 

 

上記の結果をAfter.zarというファイルにて添付ファイルにしていますので、確認してください。

非球面項も含めてを最適化にするには、コーニックや非球面係数を変数に設定してください。


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings