ログイン    検索  

掲示板トップ » シーケンシャルモード » シミュレーション例




新しいトピックを投稿する トピックへ返信する  [ 5 件の記事 ] 
作成者 メッセージ
 記事の件名: ゼルニケ係数を利用して“ブラックボックス”の光学系をモデリングする方法
 投稿記事 Posted: 2009年11月20日(金) 11:42 
管理人

登録日時: 2008年8月01日(金) 16:43
記事: 136
はじめに
仕様の詳細な情報なくして光学サブ‐システムを表現する必要がしばしばあります。
1次収差の計算では近軸レンズで十分ではありますが、波面収差も必要な場合はゼルニケ位相係数を用いて光学系により発生する波面収差の正確なモデリングを可能にします。

ZEMAX の2010年2月4日バージョンより、この目的のために完全なブラックボックス機能を搭載しておりますが、ZEMAX Black Box ファイルを取り扱えない場合には以下の方法でも可能です。
ブラックボックス機能についてはこちらをご参照ください。
http://www.prolinx.co.jp/zemaxforum/viewtopic.php?f=24&t=617 

お客様に詳細な仕様を開示することなく収差データを提供されたい場合、このゼルニケ位相係数はZEMAXにより作り出すことが可能です。レンズの仕様データがない場合にはインターフェロメータによりレンズを測定しこのゼルニケ位相係数を得ることが可能です。お使いのインターフェロメータソフトによっては、すでにZEMAXのゼルニケフォーマットもしくはグリッド位相データ、.INTファイルのデータがあるかもしれません。ZEMAXはこれらすべてを使用することができますが、このトピックの目的のためにはゼルニケデータのみを使用します。

ゼルニケ位相データは特定の視野と特定の波長における光学系の性能の測定を表します。ガラス、曲率半径、非球面係数等の情報はゼルニケデータではないため、異なる視野や波長までのゼルニケデータを図ることはできません。そのため、モデル化されたい性能に合わせて視野と波長それぞれのゼルニケ位相データ一式が必要となります。これらのデータは視野と波長ごとの組み合わせで別々のファイル、もしくは別々のコンフィグレーションによってZEMAXに入力することができます。

ひとつだけ重要な例外があります。モデル化される光学系が全反射型の場合、ゼルニケスタンダードサグ面は任意の視野点のすべての波長における性能のモデル化に使用可能です。このトピックでは、この特別なケースの詳細を説明します。


トップへ 
   
 
 記事の件名: Re: ゼルニケ係数を利用して“ブラックボックス”の光学系をモデリングする方法
 投稿記事 Posted: 2009年11月20日(金) 11:43 
管理人

登録日時: 2008年8月01日(金) 16:43
記事: 136
始めの設計

このトピックにあるサンプルファイルはすべて最終ページのリンクからZIPファイルにてダウンロードが可能です。まず始めに見るのは、ZEMAXと共に配布されているクックトリプレットのサンプルファイルを基にした「Cooke one field, one wavelength.zmx」です。ファイル名からもわかるように、このファイルは1つの視野と波長のペアに基づいています。
添付ファイル:
zernike01.gif
zernike01.gif [ 7.83 KiB | 表示回数: 791 回 ]


そして、波面はこのように見えます。
添付ファイル:
zernike02.jpg
zernike02.jpg [ 39.04 KiB | 表示回数: 790 回 ]


スポットサイズはこのようになります。
添付ファイル:
zernike03.gif
zernike03.gif [ 9.15 KiB | 表示回数: 793 回 ]


ゼルニケ係数は光学系によって発生する波面エラーを描写するコンパクトな方法です。“ブラックボックス”モデルを作成するには、最初に同じ一次特性で近軸の光学系を作成する必要があります。そして、ゼルニケデータで近軸の光学系により作り出された波面に収差を施します。

キーとなる必要な近軸データは射出瞳の位置と、射出瞳径です。すべての波面データは射出瞳で計測されるため、ブラックボックスシステムは同じ瞳データが必要です。このファイルでは、瞳データは次のようになります。

射出瞳径 = 10.2337 mm
射出瞳の位置 = -50.9613 mm


トップへ 
   
 
 記事の件名: Re: ゼルニケ係数を利用して“ブラックボックス”の光学系をモデリングする方法
 投稿記事 Posted: 2009年11月20日(金) 11:47 
管理人

登録日時: 2008年8月01日(金) 16:43
記事: 136
The Paraxial Equivalent

“Paraxial Equivalent.zmx”ファイルを開いてください。ここでは単純に同じ光学系をパラキシャルレンズ面でモデリングします。
添付ファイル:
zernike04.gif
zernike04.gif [ 7.52 KiB | 表示回数: 788 回 ]


次のことに気を付けてください。

オリジナルの設計と同じ視野と波長を使います。
入射瞳径はオリジナルの光学系の射出瞳径と同じ値に設定します。このファイルでは、入射瞳、絞り面、そして射出瞳はすべて同じ場所に位置します。
パラキシャルレンズの焦点距離と像面への厚みは、どちらもオリジナルファイルの射出瞳の位置である-1*に設定してください。-1ファクターの理由は、EXPP(射出瞳の位置)が像から瞳までを計測しているのに対し、面の厚みは瞳から像までの距離であるため符号を変える必要があります。
オリジナルの光学系と同じ一次特性を持たせます。
この光学系の射出瞳のサイズと場所はオリジナルの光学系のそれと全く同じです。パラキシャルレンズ出力に収差を追加するには、パラキシャルレンズのすぐ後にゼルニケ標準位相面を使います。ここでの目的は、オリジナルレンズのゼルニケ係数を求め、それをParaxial Equivalent ファイルのゼルニケ面に追加することです。
添付ファイル:
zernike05.gif
zernike05.gif [ 14.49 KiB | 表示回数: 790 回 ]


トップへ 
   
 
 記事の件名: Re: ゼルニケ係数を利用して“ブラックボックス”の光学系をモデリングする方法
 投稿記事 Posted: 2009年11月20日(金) 11:51 
管理人

登録日時: 2008年8月01日(金) 16:43
記事: 136
レンズ間でのゼルニケデータのコピー

“Cooke One Field One Wavelength.zmx”ファイルに戻り、Analysis > Aberration Coefficients > Zernike Standard Coefficients の順にクリックしてください。ZEMAXは光学系の波面を計算し、ゼルニケポリノミアルを適合させます。
添付ファイル:
zernike05a.gif
zernike05a.gif [ 18.1 KiB | 表示回数: 784 回 ]


波面のサンプリングとゼルニケ項の数は両方ともSetting ダイアログを通じてユーザー様が定義できます。ここで波面が適切にサンプリングされているか、もしくはゼルニケ項の数を判断するキーのパラメータはRMSフィットエラーと最大フィットエラーです。サンプリングと項数両方に関してデフォルトパラメータを使うと、この設計は以下のようになります。
添付ファイル:
zernike06.gif
zernike06.gif [ 2.2 KiB | 表示回数: 783 回 ]


これは、ゼルニケ係数から再現された波面から本来の波面を差し引くと、エラーは波の100万分の1程度であることを意味し、十分な結果です。しかし、一般的に条件に見合う適合を得るには、波面のサンプリングと最大ゼルニケ項を調節する必要があります。

ここで、ゼルニケ係数データをこの設計からParaxial equivalent設計に移動させる必要があります。これはゼルニケデータをプリントアウトして再度タイプすることで行うことが可能ですが、面倒な作業です。このような作業にはマクロが最適です。

以下の Zernike Readout.zpl というマクロ(トピックの最後にあるZIPファイルにも含まれています。)はこのレンズからゼルニケデータを抽出し、そのデータをExtra Data(追加データ)エディタのTools > Import Dataが読み込める形式のファイルに保存します。手順は次の通りです。
まず、必要なすべての変数を定義します。
添付ファイル:
zernike07.gif
zernike07.gif [ 16.51 KiB | 表示回数: 783 回 ]


(以前このマクロはConTextで書かれており、サンプリングと最大ゼルニケ項は上記のゼルニケ解析に使った値に設定すべきであることに注意してください。)そして、マクロは射出瞳径とゼルニケデータを取得します。
添付ファイル:
zernike08.gif
zernike08.gif [ 7.49 KiB | 表示回数: 785 回 ]



ゼルニケ面の正規化基円半径は射出瞳径の半分であることに注意してください。次にマクロはゼルニケ標準位相面に読み込ませるために正しい形式でデータを.DATファイルに出力します。
添付ファイル:
zernike09.gif
zernike09.gif [ 9.17 KiB | 表示回数: 784 回 ]


ゼルニケデータはゼルニケ標準位相面のExtra Data Parameter(追加データパラメータ)欄に次のように入力されます。
添付ファイル:
manualref.jpg
manualref.jpg [ 10.36 KiB | 表示回数: 779 回 ]
 

このマクロをZEMAX > macrosフォルダへ入れ、Macros > Refresh Macro Listをクリックすると、マクロがメニューリストに表示されますので、その後マクロを実行します。“zernike.dat”というオリジナルのZEMAXファイルと同じフォルダ内に作られます。このファイルをメモ帳で開くと、以下のようになります。
添付ファイル:
zernike11.gif
zernike11.gif [ 14.44 KiB | 表示回数: 782 回 ]


このファイルにはゼルニケ標準位相面が必要な全てのデータが含まれています。最初の番号はゼルニケ項の数、その後正規化基円半径、そして各ゼルニケ項です。Extra Data(追加データ)エディタのインポート機能でこのファイルを直接読み込むことができます。

Paraxial equivalentレンズファイルに戻って、Extra Data(追加データ)エディタを開いてください。そして、ツールメニューから「Import Data」を選択してください。
添付ファイル:
zernike12.gif
zernike12.gif [ 13.74 KiB | 表示回数: 781 回 ]


「Browse」ボタンをクリックし、zernike.datが保存されているフォルダへ移動してください。
添付ファイル:
zernike13.gif
zernike13.gif [ 5.71 KiB | 表示回数: 783 回 ]


そして、これを第2面にインポートしてください。そうすると、Extra Data(追加データ)エディタは以下のようになります。
添付ファイル:
zernike14.gif
zernike14.gif [ 11.83 KiB | 表示回数: 780 回 ]


ゼルニケデータがインポートされています。波面エラーは以下のようになり
添付ファイル:
zernike15.jpg
zernike15.jpg [ 41.96 KiB | 表示回数: 779 回 ]


スポットダイアグラムは次のようになります。
添付ファイル:
zernike16.gif
zernike16.gif [ 9.64 KiB | 表示回数: 783 回 ]


このファイルはオリジナルファイルと同じ光線追跡結果を生み出します。添付のzipファイルにある「Zernike Equivalent.zmx」は完成された光学系を表しています。また、同ファイルのオリジナルバージョンとゼルニケバージョンの両方を2つの異なるコンフィグレーションとして“Direct Comparison.zmx”ファイルに表しています。これによって2つのバージョンのファイルの比較が容易になります。
添付ファイル:
zernike17.gif
zernike17.gif [ 8.51 KiB | 表示回数: 785 回 ]


トップへ 
   
 
 記事の件名: Re: ゼルニケ係数を利用して“ブラックボックス”の光学系をモデリングする方法
 投稿記事 Posted: 2009年11月20日(金) 12:04 
管理人

登録日時: 2008年8月01日(金) 16:43
記事: 136
まとめ

パラキシャルレンズ面とゼルニケ標準位相面の組み合わせによって、構築する光学系の“ブラックボックス”のモデル化がかなり正確になります。パラキシャルレンズはオリジナルの光学系の一次特性(つまり、射出瞳のサイズと位置)を有しており、ゼルニケ面は波面収差を増加させます。

シンプルなマクロによって、ゼルニケデータをブラックボックス ファイルのオリジナルファイルからゼルニケ面へ容易に移動させることができます。

このトピックで使用した全てのファイルは以下のリンクからダウンロード可能なzipファイルに含まれています。


添付ファイル:
zernike.zip [8.05 KiB]
ダウンロード回数: 76 回
トップへ 
   
 
期間内表示:  ソート  
 
新しいトピックを投稿する トピックへ返信する  [ 5 件の記事 ] 

掲示板トップ » シーケンシャルモード » シミュレーション例


 
トピック投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索: