この記事では、OpticStudio 20.1 以降で実施する OpticsBuilder 向け前処理ツールの全般的な概要を取り上げます。OpticsBuilder 向け前処理ツールでは、OpticStudio のレンズ ファイル (ZMX ファイル) を、OpticsBuilder で使用するファイル形式 (ZBD ファイル) に変換します。これにより、光学設計部門では、OpticsBuilder 対応の CAD プログラム (SolidWorks や Creo など) で容易に使用できるファイル形式に光学設計をパッケージ化できます。
著者 Jacob Hart and Alexandra Culler
Introduction
OpticsBuilder 向け前処理ツールでは、OpticStudio モデルを OpticsBuilder (ZBD) ファイルへ簡潔に変換できるようにすることで、光学設計部門と機械設計部門との間で効率的なデータ受け渡しを実現します。この簡潔な変換プロセスは、ユーザー入力、図面入力、および .ZBD ファイルの保存の 3 つのステップで構成されます。
OpticsBuilder 向け前処理の概要
OpticsBuilder 向け前処理ツールは、OpticStudio の [ファイル] (File) → [変換] (Convert) セクションにあります。
ヒント :[OpticsBuilder 向け前処理] (Prepare for OpticsBuilder) ボタンが表示されていない場合は、OpticStudio 20.1 以降にアップグレードする必要があります。
OpticsBuilder 向け前処理には、変換プロセスの各ステップに合わせて 3 つの設定タブがあります。[ユーザー入力] (User Inputs) タブでは、解析環境を設定し、OpticsBuilder による光線追跡結果を比較する際にスポット サイズ、ビームの遮蔽、像への迷光混入に適用する許容デルタを定義できます。スポット サイズの許容デルタは、シーケンシャル モデルからノンシーケンシャル モデルへの変換で最大スポット サイズに許容できる変化としても扱われます。詳細については「エラー 1 :スポット サイズが一致しません (Spot sizes do not match)」を参照してください。[図面入力] (Drawing Inputs) タブでは、OpticsBuilder でレンズ図面を自動的に生成する際に必要な情報を入力できます。最後のステップである [.ZBD ファイルの保存] (Save .ZBD File) タブでは、更新した解析設定とともに、変換したファイルを保存します。
OpticsBuilder 向け前処理ツールには、以下の機能があります。
- シーケンシャル モードからノンシーケンシャル モードにファイルを変換する。この変換のために OpticsBuilder 向け前処理ツールでは以下の処理が実行されます。
- シーケンシャル面を、それに相当するノンシーケンシャル形状オブジェクトに変換する。
- 変換後の光線の位置が正しいことを検証する。
- 変換後の光線の角度が正しいことを検証する。
- 変換後のスポット サイズの変化が、許容値の範囲に収まっていることを確認する。
- シーケンシャル モードから適切に変換できなかった場合、ノンシーケンシャル ファイルを開いて検査する。
- 得られたノンシーケンシャル オブジェクトが OpticsBuilder でサポートされていて、エクスポートできることを確認する。
- シーケンシャル設計のクリティカル境界光線セットを生成する。
- 貼り合わせ式のダブレット、トリプレット、クアドラプレットの図面データを手動で入力する。
- 他のエンジニアが参照できるコメントを .ZBD ファイルに追加する。
- 光線追跡解析で、散乱または光線分割を有効にするかどうかを選択する。
OpticsBuilder 向け前処理ツールでは、上記のステップを実行するために変換前のファイルのコピーが作成されます。つづいて、そのファイルがシーケンシャルである場合は、デザインの固定ツールが実行され、クリティカル光線セットが生成されて、ノンシーケンシャルへの変換が適用されます。このプロセスは、NSC グループへの変換ツールで使用されるプロセスに類似しています。ヘルプ システム ファイルには、これらの各ステップに関する詳しい説明があります。その説明は、「[公差] (Tolerance) タブ」→「[製造ツール] (Production Tools) グループ」→「[デザインの固定] (Design Lockdown)」、「[公差] (Tolerance) タブ」→「[製造ツール] (Production Tools) グループ」→「[クリティカル光線セットの生成] (Critical Rayset Generator)」、「[ファイル] (File) タブ」→「[変換] (Convert) グループ」→「[NSC グループに変換] (Convert to NSC)」で参照できます。
このプロセスを完了すると、2 つのファイルが比較されます。まず、回転の行列とオフセットの行列が取り込まれ、比較されます。つづいて、このノンシーケンシャル ファイルを使用して、一度に 1 つの視野を対象として、視野ごとに 10,000 本の解析光線で光線追跡が実行されます。ディテクタのデータが保存され、変換前のシーケンシャル ファイルから幾何光学的像解析ツールで得られたスポット サイズのデータと比較されます。幾何光学的像解析ツールには次の各設定があります。
視野ごとにこのツールが繰り返し実行されます。ノンシーケンシャル モデルで、ディテクタ上の X 方向ピクセル数からピクセル サイズが視野ごとに求められます。
最後に、クリティカル光線セットがノンシーケンシャル ファイルに読み込まれ、光線到達位置の座標がディテクタから読み取られます。これらの座標が変換前のシーケンシャル ファイルと比較され、座標値に差があれば、[ユーザー入力] (User Inputs) ダイアログでユーザーが入力した設定値と比較されます。
ファイルがノンシーケンシャルの場合は、OpticsBuilder 向け前処理によって、互換性がないオブジェクトがあるか確認されたうえで光線追跡が実行され、変換前のファイルとコピーしたファイルが比較されます。この光線追跡が保存され、ディテクタの位置を求めるために光路解析が実行されます。
OpticsBuilder 向け前処理を使用するためのステップ
シーケンシャル モードでもノンシーケンシャル モードでも、OpticsBuilder 向け前処理ツールを使用できます。このツールを使用するには、部門間で共有するファイルを開き、[ファイル] (File) → [OpticsBuilder 向け前処理] (Prepare for OpticsBuilder) に移動します。[ユーザー入力] (User Inputs) タブが表示されます。この時点で次の手順に従います。
- 解析環境と許容デルタを選択します。ここでは、光線追跡で散乱または光線分割を考慮するかどうかを選択できます。また、ファイル形式の変更に伴って像面に発生する変化の許容量も定義できます。特に、シーケンシャルからノンシーケンシャルへのファイル変換によってスポット サイズに発生する変化の許容値を、[スポット サイズ] (Spot Size) の許容デルタで定義します。
- CAD 部品を開くプログラムを選択します (SolidWorks または Creo)。
- クリティカル光線追跡の公差を入力します。シーケンシャル光学系ではクリティカル光線セットが生成され、像質とビームの遮蔽の解析に使用されます。
- [準備] (Prepare) をクリックします。この時点でファイルが解析され、エラーがないことおよび無効なタイプのオブジェクトがないことが確認されます。
ZBD ファイルの作成に問題がなければ、[次へ] (Next) をクリックすることで [図面入力] (Drawing Inputs) タブへ移動できます。ZBD ファイルの作成に不具合があると、プロセスが失敗した理由および問題を修正するために使用できるステップを示したエラー メッセージが表示されます。表示されるエラー メッセージの詳細については「発生の可能性がある変換エラー」を参照してください。あらゆるエラーを解決しないと、次のステップに進むことができません。
[図面入力] (Drawing Inputs) タブでは、SolidWorks でレンズの製造図面を自動生成するために使用する図面データを入力します。
レンズ面の各ペアのデータが、画面上部のラベル付きタブに表示されます。エレメント タイプとしてシングレット以外を選択すると、そのエレメントの後にタブが作成され、貼り合わせのプロパティを指定できます。
シーケンシャル モデルでは、次の各情報が [図面入力] (Drawing Inputs) タブで自動的に入力されます。
- 前面と後面の曲率半径
- 前面と後面の有効径
- 前面と後面の波長範囲
- 前面と後面の波長公差
- レンズ材料
- 屈折率
- アッベ数
- 中央厚み
- 基準波長
これらのデータは、レンズ データ エディタと公差データ エディタから得られます。上記以外のデータのフィールドには手動で入力する必要があります。
ノンシーケンシャル モデルでは、次の情報が [図面入力] (Drawing Inputs) タブで自動的に入力されます。
- レンズ材料
図面入力の指定を完了した後、[次へ] (Next) をクリックして [.ZBD ファイルの保存] (Save .ZBD File) タブへ進み、注釈を入力します。これらの注釈は、生成するファイルに添付されるので、他の設計担当者が確認できます。ZBD ファイルを作成できる状態にあれば [保存] (Save) をクリックします。
ZBD ファイル形式
OpticsBuilder で使用する ZBD ファイル形式は、光学機械パッケージの反復解析に必要なすべての情報を収めることを目的としています。これにより、OpticStudio とサポート対象の CAD プログラムとの間で相互にデータを容易に交換できます。このファイル タイプは、OpticsBuilder と OpticStudio 20.1 以降で開くことができます。ZBD ファイルには次の情報が保存されます。
- シーケンシャル モデル (該当する場合)
- ノンシーケンシャル モデル
- OpticStudio による光線追跡のベースライン結果
- クリティカル光線束 (シーケンシャル モデルのみ)
- 材料のプロパティ
- RMS スポット サイズ、ビームの遮蔽、および像への迷光混入に対する許容デルタ
- 光学系の図面情報
- 光学系の公差値
OpticStudio で ZBD ファイルを開くと、ノンシーケンシャル モデルを収めた ZAR が表示されます。
発生の可能性がある変換エラー
[OpticsBuilder 向け前処理] (Prepare for OpticsBuilder) ツールでは、OpticStudio のファイルから CAD に適した .ZBD ファイルへの変換はユーザーに委ねられています。そのことから、想定どおりの変換が実行されなかった場合はエラーが表示されます。これにより、光学設計部門では、ファイルを更新し、すべての問題を解決したうえで、ファイルを CAD 設計部門に移管できます。表示される可能性があるエラー メッセージとして、次の 6 つがあります。
- エラー :指定されたしきい値にスポット サイズが収まりません
- エラー :CAD プラットフォームでサポートされていないオブジェクトです
- エラー :クリティカル光線が失敗しました。ノンシーケンシャル ファイルを開いて確認してください
- エラー :ノンシーケンシャルへの変換に失敗しました。ノンシーケンシャル ファイルを開いて確認してください
- 解析の実行エラー :デザインの固定ができませんでした
- 解析の実行エラー :オブジェクトの基準としてオブジェクトのインスタンスが設定されていません
エラー 1 :スポット サイズが一致しません (Spot sizes do not match)
[OpticsBuilder 向け前処理] (Prepare for OpticsBuilder) ダイアログの [ユーザー入力] (User Inputs) で、スポット サイズに対する許容デルタを指定できます。光学系をシーケンシャルからノンシーケンシャルに変換すると、すべての視野のスポット サイズが解析されます。スポット サイズの変化量がユーザー指定の値よりも大きくなると、このエラーが表示されます。多くの場合、これは許容デルタの値が大きすぎ、その値を更新する必要があることを示しています。一般的に、ノンシーケンシャル光線追跡とシーケンシャル モードで実行した光線追跡との間には、必ず何らかのノイズが存在します。この 2 つのモードには、スポット サイズにわずかな相違があることが想定されます。
上記のほかにも、スポット サイズが変化する一般的な理由として以下があります。
- 変換過程のデザインの固定で、ビームのプロファイルに悪影響を及ぼすアパチャーが生成される。
- 光学系が適切に変換されず、ディテクタが正しい位置に置かれていない。
- 光学系がきわめて大きいと、同様に大きいスポット サイズが生成される。スポット サイズの変化率が同じでも、1,000 µm のスポットと 10 µm のスポットでは変化量が大きく異なります。
これらのほかにも理由があります。スポット サイズのデルタを妥当な水準に更新済みの場合は、変換の各ステップを一つ一つ確認します。まず、[公差] (Tolerance) → [デザインの固定] (Design Lockdown) からデザインの固定ツールを実行し、アパチャーの適用が光線追跡にどのような影響を及ぼすかを確認します。つづいて、ノンシーケンシャル版のファイルを開き、エレメントの配置や定義にエラーがないか確認します。
このエラーは、シーケンシャル モードでのみ発生します。
エラー 2 :CAD プラットフォームでサポートされていないオブジェクトです (Objects are not supported in CAD platform)
ノンシーケンシャル オブジェクトによっては、ZBD ファイルにエクスポートできないものがあります。このようなオブジェクト タイプでは変換が必要です。
ほとんどの場合、現在のモデルに存在するオブジェクトに、物理的に等価な形状がないと、このエラーが発生します。サポートされていないオブジェクトの典型は、ユーザー定義オブジェクトです。OpticStudio では、ユーザー定義オブジェクトが使用されていると、外部 DLL を使用してそのオブジェクトの幾何学形状が定義されます。この情報は、外部の機械設計プログラムでは読み取ることができないので、ZBD ファイル形式には変換できません。このエラーの修復手段として、無効なオブジェクトをグリッド サグ面またはブール オブジェクトに変換する方法があります。ブール CAD オブジェクト、ブール ネイティブ オブジェクト、複合レンズ オブジェクトと、オブジェクトの組み合わせツールの使用方法に関するナレッジベースの記事に、ブール オブジェクト タイプの詳しい説明があります。いくつかのオブジェクトに、互換性上の既知の問題があります。
そのようなオブジェクトとして以下があります。
- CAD アセンブリ :Autodesk Inventor
- CAD アセンブリ :Creo
- CAD アセンブリ :SolidWorks
- CAD パート :Autodesk Inventor
- フリーフォーム Z
- グリッド サグ レンズ
- スイープ
このエラーは、ノンシーケンシャル モードでのみ発生します。
エラー 3 :クリティカル光線が失敗しました (Critical Rays failed)
OpticsBuilder 向け前処理ツールでは、光学系の光線追跡を実行し、クリティカル光線の角度と位置に発生する偏差を検出します。この偏差が指定の公差を超えると変換が失敗します。同様に、マージナル光線や主光線を遮蔽するようなアパチャーを適用すると、クリティカル光線が生成されません。これらの光線が光学系で追跡される様子を確認する最良の方法は、ノンシーケンシャル ファイルを開くことです。つづいて、レイアウト プロットを表示し、光学系を光線が移動する様子を確認します。これにより、オブジェクトに到達していない光線や、追跡の早期段階で遮蔽されている光線を検出できます。
また、シーケンシャル モードで開始したのであれば、変換前のシーケンシャル ファイルを再度開き、デザインの固定を実行する方法もあります。これは、[公差] (Tolerance) → [デザインの固定] (Design Lockdown) に移動することで実行できます。デザインの固定ツールでは、ビームを遮蔽する可能性があるすべての面にアパチャーが適用されます。このような状態に該当するかどうかは、デザインの固定を適用した後、[設定] (Setup) → [システム チェック] (System Check) に移動することで確認できます。何らかのエラーまたは警告が報告される場合は、それを修正したうえでファイルを変換する必要があります。
このエラーは、シーケンシャル モードでのみ発生します。
エラー 4 :ノンシーケンシャルへの変換に失敗しました (Convert to non-sequential failed)
シーケンシャルからノンシーケンシャルへの変換に失敗することがあります。通常、このエラーは、サポート対象外の面タイプまたはアパチャー タイプを使用したことに起因しますが、その本来の原因がシステム エクスプローラでの設定にあることが考えられます。このエラーが表示された場合は、ヘルプ ファイルで変換プロセスを熟知することが効果的です。変換プロセスについては、「[ファイル] (File) タブ」→「[変換] (Convert) グループ」→「[NSC グループに変換] (Convert to NSC)」→「シーケンシャル面からノンシーケンシャル オブジェクトへの変換」を参照してください。
また、ヘルプ ファイルの「[ファイル] (File) タブ」→「[変換] (Convert) グループ」→「[NSC グループに変換] (Convert to NSC)」→「例外と制限」では変換の互換性に関する既知の問題を一覧で取り上げています。この一覧を参照して、互換性のない面を光学系に設定していないか確認します。ノンシーケンシャル変換の詳細については、シーケンシャル面からノンシーケンシャル オブジェクトへの変換に関するナレッジベースの記事を参照してください。
このエラーは、シーケンシャル モードでのみ発生します。
エラー 5 :デザインの固定ができませんでした (A design lockdown did not succeed)
デザインの固定ツールでは、光学系の理想的なすべての入力が、現実的な製造入力に変換されます。この過程で、半径は固定され、すべてのモデル ガラス タイプが実際のガラスに変換されます。デザインの固定ツールが失敗する理由はいくつかあるので、このエラーが報告されると、このツールでは、そのエラーの発生元に関する情報を取得しようとします。また、代表的な修正もいくつか一覧表示されます。このエラーの例を以下の図に示します。
この例では、エラーとして「カタログにガラス *F2* が見つかりません (Can't find glass *F2* in catalog!)」が報告されています。このエラーは、[システム エクスプローラ] (System Explorer) → [材料カタログ] (Material Catalogs) → [使用するカタログ] (Catalogs to Use) にカタログが何も記述されていないために発生しています。このツールでは、参照するカタログがないと、モデル ガラスをそれと相似な現実の材料に変換できません。
このエラーが表示された場合は、OpticsBuilder 向け前処理ツールから一覧で提示される修正候補を試します。
このエラーは、シーケンシャル モードでのみ発生します。
注意 :バージョン 20.1 では、[ノンシーケンシャル ファイルを開く] (Open Non-Sequential File) ボタンによってこのエラーが発生します。これは正しい動作ではなく、不完全なファイルが開きます。
エラー 6 :オブジェクトの基準としてオブジェクトのインスタンスが設定されていません (Object reference not set to an instance of an object)
このエラーは、シーケンシャル モードのエラー [オブジェクトの座標を定めることができません。] (Cannot determine object coordinates!) に相当します。多くの場合、レイ エイミングのアルゴリズムで絞り (STOP) 面を検出できないと、このエラーが発生します。このエラーの発生は稀ですが、極端なディセンタやティルトを面に適用した場合や収差がきわめて多い光学系の場合に発生します。このエラーは、変換の過程で報告され、ほとんどデザインの固定のステップで発生した問題の結果と考えられます。OpticsBuilder 向け前処理を使用中にこのエラーが報告された場合は、変換前のファイルにデザインの固定を手動で適用してみます。これでエラーが表示されるかどうかを確認します。エラーが報告される場合は、適切な光線追跡になるように、システム設定を手動で更新する必要があると考えられます。この更新方法の詳細については、瞳シフトの概要とその計算方法に関するナレッジベースの記事を参照してください。
ノンシーケンシャル モードでは、光線追跡のパス解析が失敗すると、このエラーが報告されます。バージョン 20.1 の時点では、これは既知のバグであり、光源ではないオブジェクトから少なくとも 1 本の光線が出発している状態になっています。この障害があったとして、(最悪でも) 特定の光線追跡で少数の光線が影響を受けるに過ぎないので、OpticsBuilder 向け前処理ツールを再実行することで、このエラーを回避できます。これにより、新たに無作為選択された光線セットで光線追跡が再実行されます。変換や光学系に悪影響が及ぶことはありません。
このエラーは、シーケンシャルとノンシーケンシャルの両方のモードで発生します。
KA-01891
コメント
記事コメントは受け付けていません。