ノンシーケンシャル オブジェクトにコーティングと散乱関数を追加する方法


ノンシーケンシャル オブジェクトにコーティングと散乱関数を追加する方法

Author
Message
Zemax_Japan
Zemax_Japan
Forum Member
Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)

Group: Administrators / Zemax Staff
Posts: 257, Visits: 2.8K
概要 : ノンシーケンシャル オブジェクトは 3 次元の体積です。薄膜コーティングや散乱関数は、これら 3D 体積の面のプロパティです。この記事では以下の内容を取り上げています。
  • オブジェクトの「フェイス番号」の概念
  • オブジェクトのさまざまなフェイスに薄膜コーティングや散乱関数を適用する方法
  • これらのプロパティを CAD オブジェクトに適用する際に固有な課題

著者 : Mark Nicholson

公開日 : 2006 年 4 月 3 日

サンプル ファイル :

対象 : CAD データ交換


はじめに

Zemax Development Corporation は、この記事での例として光ディテクタ光学系のレイアウト プロットを使用することを許諾いただいた Sick AG 社の Ingolf Hörsch 博士に謝意を表します。

ノンシーケンシャル体積オブジェクトは、空間の一定の領域を定義する 3D 体積です。使用できるオブジェクトとして、主に次の 2 つのタイプがあります。
  • 標準レンズ オブジェクトなどのパラメトリック オブジェクト。前面の曲率半径、後面の曲率半径、中央の厚み、放射開口などのパラメータで定義するオブジェクトです。パラメトリック オブジェクトとして、ホログラム オブジェクト、回折オブジェクト、シリンダ オブジェクト、バイコーニック オブジェクトなど、数多くのオブジェクトがあります。
  • データ ファイルで定義するオブジェクト。このオブジェクトとして、ポリゴン オブジェクト、表形式フェーセット オブジェクトなどのほか、STEP、IGES、SAT、STL の各フォーマットを通じて CAD パッケージからインポートしたオブジェクトもあります。これらのオブジェクトには、フェーセットした不連続面で構成したもの、滑らかに連続した面で構成したもの、フェーセットした面と連続した面の両方の領域を持つものがあります。

どのタイプのオブジェクトでも、その面を通る光の伝搬を最高の精度でシミュレートするには、面に薄膜コーティングや散乱関数を設定する必要があります。
Zemax では、オブジェクトの面上で薄膜コーティングや散乱関数を適用する領域を記述するために「フェイス」という概念を使用しています。

パラメトリック オブジェクトではフェイスを容易に定義できることが普通です。たとえば、研磨された前のフェイス、研磨された後のフェイス、および両者を接続する研磨されていない粗仕上げのシリンダで標準レンズを構成できることは容易に理解できます。

一方、データ ファイルによるオブジェクトの定義では、「フェイス」の定義が複雑になります。
フェイスの構造を明確に把握できるような単純なフェーセット ミラーであっても、多くのフェーセット面で構成されており、フェイスの数学的記述がきわめて複雑になることがあります。複雑な CAD オブジェクトが関与すると、平坦面、曲面、スプラインなどのセグメントで構成された数メガバイトもの巨大なファイルを扱うことが必要になります。

この記事では、一般的なオブジェクトにコーティングや散乱関数を設定するときの参考となるように、これらのフェイスがどのように定義されているのかについて説明します。


パラメトリック オブジェクト

簡単な標準レンズ オブジェクトを考えます。このオブジェクトには、次のように 3 つのフェイスがあります (フェイス番号はゼロから始まります)。

http://forum.zemax.com/Uploads/Images/a60bd1e6-0cd9-4b9e-8d40-1f2f.gifhttp://forum.zemax.com/Uploads/Images/807dab46-48b8-4a72-82b1-1a5a.gif


どのオブジェクトについても、それを構成するフェイスについての説明が Zemax のマニュアルにあり、そのフェイスを表現するわかりやすい名前が [コーティング/散乱] (Coat/Scatter) タブに表示されます。フェイスを選択すると、光線がそのフェイスとどのように相互作用するかを 3 つの選択肢から指定できます。

http://forum.zemax.com/Uploads/Images/597c44db-d51a-4fa4-8dd5-6d8d.gif

[オブジェクト デフォルト] (Object Default) を選択すると、ノンシーケンシャル コンポーネント エディタに入力したガラスの屈折性材料、反対側のフェイスを構成する屈折性材料、フェイスに適用した薄膜コーティング (後述)、フェイスに到達する光線の波長、偏光状態、入射角でフェイスの反射性を定義できます。散乱関数の適用も可能です。

[反射性] (Reflective) を選択すると、フェイスは光学材料がミラーであるかのような挙動を示します。

フェイスのどちらの面に入射する光線も反射します。コーティングや散乱関数は、通常どおり適用可能です。

[吸収性] (Absorbing) を選択すると、フェイスに入射した光線はすべてそこで伝搬を終了します。
コーティングや散乱関数は適用できません。

この記事では、[オブジェクト デフォルト] (Object Default) を選択することを前提に説明します。

フェイスを選択すると、[コーティング] (Coating) ドロップダウン リストを使用して、現在読み込まれているコーティング ファイルにある任意のコーティングをそのフェイスに適用できます。Zemax は、偏光光線を追跡および解析するための総合的な機能を備えています。
入力偏光状態を任意に定義でき、透過、反射、吸収、偏光状態、消光比、リターダンスを考慮できます。

コーティングは、任意の材質と任意の数の層で構成できるほか、それぞれの層に複素屈折率を定義できます。コーティング材料に対しては、その分散を全面的にモデル化できます。
基板には、ガラス、金属、ユーザー定義材料を使用できます。詳細は、マニュアルの「偏光解析」の「Zemax でのコーティングの定義」を参照してください。Essential MacleodFilm Star などの薄膜コーティング設計パッケージからコーティング定義を直接インポートすることもできます。フェイスが空気からガラスに変化し、次いでガラスから空気に変化する場合、Zemax では自動的にコーティング層の順番が反転します。したがって、「ミラー反転」したコーティングを定義しなくても、同じコーティングを多くのフェイスに適用できます。

元のコーティング データ一覧を入手できない場合でも、波長と角度に対するコーティングの性能データを記述した TABLE (表形式) コーティングや、あらゆる角度と波長の光線すべてに対する反射率と透過率を定義した IDEAL (理想) コーティングを使用できます。Zemax では、コーティング データを設定すると、入射光の偏光状態、波長、角度の関数として消光比、位相、リターダンス、反射、透過、吸収がすべてのコーティングについて計算されます。続いて、面の散乱関数を適用できます。ランバーシアン、ガウシアン、ABG、ユーザー定義などの散乱関数が用意されています。

たとえば、レンズの前側フェイスは十分に研磨され、1/4 波長厚の MgF2 コーティングが適用されていると考えられます。
このコーティングは、Zemax に付属するデフォルトのコーティング カタログには「AR」という名前で収録されています。このコーティングをレンズの前側フェイスであるフェイス 1 に次のように適用します。

http://forum.zemax.com/Uploads/Images/9b7ce78c-46eb-4877-981b-e216.gif


側面フェイスであるフェイス 0 には、研磨もコーティングも施されていない可能性が高いので、次のように設定します。

http://forum.zemax.com/Uploads/Images/49a76316-bd91-4ddc-9d32-63fe.gif


CAD オブジェクト

SolidWorksProEngineerCATIA などの 3D CAD パッケージで設計した体積オブジェクトを、各種の CAD 交換フォーマットを介して Zemax にインポートできます。これによって、光学モデルの作成に幅広いオブジェクトを使用できるようになります。なお、このようなオブジェクトの面に光学特性を設定する場合に特有の課題があります。

まず、CAD オブジェクトは数メガバイトもの大容量のデータとして記述されていることが普通です。
次に、CAD プログラムでは多くの場合、データが意味のある順序ではエクスポートされません。したがって、オブジェクトの面を構成する各 CAD エンティティを意味のあるフェイス群として編成する作業が必要になります。

たとえば、次の光ディテクタ光学系を考えます。




このオブジェクトには、178 個の独立した CAD 面が存在します。CAD 面とは、オブジェクトを記述するために CAD プログラムで使用する基本単位です。さらに、それらの面は脈絡のない順序で記述されています。したがって、たとえば CAD 面 45 の記述位置がわかっていたとしても、CAD 面 46 の記述位置を知る手立てにはなりません。

このオブジェクトは、2 枚のレンズで構成されています。
一方は、物体のシーンをフラッシュで照明するためのもので、もう一方は、光学系のディテクタ上に物体のシーンを結像するためのものです。それぞれのレンズの光路は Zemax のシーケンシャル機能で別々に設計されています。それらのレンズを CAD プログラムにエクスポートして組み合わせ、必要な取り付け金具を追加しています。完成した CAD オブジェクトを再びエクスポートして Zemax に戻し、効率、像質、迷光を光学機械的に評価します。

このオブジェクトは射出成形によって製造されます。
使用する面仕上げは 2 種類のみです。レンズ面は滑らかに研磨され、常温コーティングが施されます。その他の面はすべて放電加工した金型を使用して製造されるため、粗い散乱性の仕上げ面が形成されます。

当然のことながら、178 もの CAD 面を手作業で編集することは非現実的です。
他の CAD オブジェクトでは、サイズがこれよりはるかに大きくなる場合もあります。こうした理由から、Zemax にはフェイスを CAD 面にどのように割り当てるかを指定する便利なオプションがあります。このオプションは、インポートするオブジェクトの [フェイス モード] (Face Mode) プロパティで設定します。このプロパティには以下の値を指定できます。
  • [フェイス モード] (Face Mode) = 0 :すべての面にフェイス番号 0 を割り当てます。オブジェクト全体で定義されるフェイスは 1 つのみです。
  • [フェイス モード] (Face Mode) = 1 :長さがゼロではない曲線で複数の面のエッジどうしが接していて、その曲線上でそれら各面の法線ベクトルが、ユーザー定義の許容角度の範囲で平行と見なせる場合に、それらすべての面に共通のフェイス番号を割り当てます。この許容角度は、[フェイス角] (Face Angle) (パラメータ 8) で定義します。このモードでは、どの程度の細密さでフェイスに番号を付けるかを調整できます。[フェイス角] (Face Angle) に大きな値 (180 など) を設定すると、互いに接するすべてのフェイスに同じ番号が割り当てられます。[フェイス角] (Face Angle) が大きくなるほど、一意の面が少なくなります。
  • [フェイス モード] (Face Mode) = 2 :すべての面のそれぞれに一意のフェイス番号を割り当てます。このモードでは、一意のフェイスの数が最大になります。
  • [フェイス モード] (Face Mode) = 3 :インポートしたファイルで定義されているフェイス番号を保持します。Zemax で作成したファイルのように、CAD ファイルの中にはフェイス番号が定義済みとなっているものがあります。Zemax でこれらのフェイス番号を認識できれば、そのまま使用します。Zemax でこれらのフェイス番号を検出できない場合、面には [フェイス モード] (Face Mode) = 2 と同じ方法でフェイス番号が割り当てられます。
  • [フェイス モード] (Face Mode) = 4 :CAD ファイルで定義されている独立したオブジェクトごとに、そのすべての面に同じフェイス番号を割り当てます。1 つの CAD ファイルに複数のオブジェクトが定義されている場合に、それらオブジェクトごとにすべての面に 1 つのプロパティを割り当てる場合に便利なオプションです。

今回の例では、すべての面を一意に識別できるように、フェイス モードの 2 を使用してオブジェクトをインポートします。
このオブジェクトには 178 個の CAD 面があります。しかし、コーティングと散乱のプロパティを定義するために使用する面仕上げは 2 種類のみです。一方は十分に研磨された低散乱性の面で、反射防止コーティングが適用されています。もう一方はコーティングされていない高散乱性の面です。これらを設定するには、オブジェクトをダブルクリックして [オブジェクト プロパティ] (Object Properties) の [フェイス] (Face) タブに移動します。

http://forum.zemax.com/Uploads/Images/4ebc592e-ab6e-436c-86cc-ee3b.gif


各 CAD 面には、フェイス 50 まで一意のフェイス番号が割り振られていることがわかります。オブジェクト ビューアを起動する前に [強調表示] (Viewer Highlights) で [面] (By Surface) を選択してから [オブジェクトの表示] (View Object) をクリックします。オブジェクト ビューアが表示されます。

http://forum.zemax.com/Uploads/Images/6c3f53fa-e4bb-48e3-aa6e-bafc.jpg

[スピン] (Spin) コントロールとクリックしてドラッグする操作を組み合わせて、ビューアに表示されたオブジェクトを見やすい方向に回転させます。[オブジェクト プロパティ] (Object Properties) ダイアログに戻り、[全てを選択] (Select All) をクリックします。
オブジェクト ビューアで、すべての CAD 面が強調表示されます。



次に、[以下へ変更 ->] (Change To ->) ボタンをクリックして、すべての CAD 面がフェイス 0 に関連付けられるように変更します。

http://forum.zemax.com/Uploads/Images/88d9e465-5ec9-40e2-9188-96dd.gif


最後に、[全てクリア] (Clear All) をクリックして、すべての面の強調表示を解除します。ここまでの操作によって、オブジェクトのすべての面に同じフェイス番号 (フェイス 0) が割り当てられます。しかし、研磨したレンズ面にはフェイス 1 などの異なるフェイス番号を割り当てる必要があります。それらのオブジェクトをオブジェクト ビューアでクリックすると、選択したフェイスが強調表示されます。
マウスでオブジェクトをクリックして回転させると、オブジェクトの中で滑らかに研磨されたレンズ領域を構成するすべてのフェイスを容易に選択できます。



オブジェクト ビューアでクリックして回転させる操作の方が、[オブジェクト プロパティ] (Object Properties) の [フェイス] (Face) タブでドロップダウン リストから面を選択するより、はるかに容易です。マウス操作によってビューアで選択した CAD 面は、ダイアログのドロップダウン リストでも強調表示されます。目的の CAD 面をマウス操作ですべて強調表示した後、[フェイス] (Face) のドロップダウン リストで [フェイス 1] (Face 1) を選択し、[以下へ変更 ->] (Change To ->) を再度クリックします。強調表示したすべての面がフェイス 1 に設定されます。以上の操作で、このオブジェクトのフェイスは 2 種類のみになり、それらのフェイスに先ほどと同じ要領でコーティングと散乱関数を追加できます。



その他のファイルベースのオブジェクト

CAD オブジェクトは最も重要と考えられますが、Zemax がサポートするファイルベースのオブジェクトはこれだけではありません。
Zemax は、データ ファイルで定義するポリゴン オブジェクトや表形式オブジェクトにも対応しています。これらはフェーセット面で構成したオブジェクトであることが普通ですが、フレネル オブジェクトのような回転オブジェクトもあります。

ポリゴン オブジェクトの場合、そのオブジェクトの作成に使用するデータ ファイルにフェイスのデータが格納されます。ポリゴン オブジェクトの詳細は、マニュアルの「ノンシーケンシャル形状オブジェクト」の「ポリゴン オブジェクトの定義」を参照してください。矩形や三角形のフェーセットごとにフェイス番号を割り当てることができます。

表形式オブジェクトの場合は、オブジェクト全体にフェイスを 1 つだけ割り当てます。


まとめ
  • CAD オブジェクトは数百にのぼる CAD 面 (平面、球面、スプラインなどによるセクション) で構成されている場合があり、一般に、CAD 面ごとにコーティングや散乱関数を適用するのは非現実的です。
  • CAD 面を意味のある面領域に整理統合するために「フェイス」の概念を使用します。
  • ポイントしてクリックする操作によるインターフェイスで、CAD セグメントの選択とフェイスへの割り当てが容易になっています。
  • ポリゴン オブジェクト (*.pob) の場合、それを定義しているデータ ファイルにフェイスの定義も収録されています。
  • これらの定義済みフェイスに薄膜コーティングや散乱関数を適用します。

GO


Similar Topics


Login
Existing Account
Email Address:


Password:


Select a Forum....



































Zemax Users Forum


Search