こんにちは。光学、光でのお困りごとがありましたか?
光ラーニングは、「光学」をテーマに様々な情報を発信する光源を目指しています。情報源はインターネットの公開情報と、筆者の多少の知識と経験です。 このページでは、HUD (ヘッドアップディスプレイ)のサンプルファイルを事例に、既存ファイルを開いて、まず何を確認するかを説明します。
結論
- 参考にしたいOpticStudioファイルを入手したら、とりあえずシステムエクスプローラを開き、アパチャー、視野、波長、レイエイミングの設定を確認します。
- 光学系の中で光線が実伝搬しているところとバーチャルプロパゲーションをしているところを確認して、実像を作る光学系か虚像を作る光学系か確認します。
このページの使い方
このページで参考にした技術記事(ナレッジベース)は、Which tools to use when working on a Head-up-Display (HUD設計に使用する機能) です。この記事は、OpticStudioでHUDを設計・解析を行う上で有用な機能一式を紹介しています。
このページでは、ナレッジベースで使われている光学用語、技術用語、前提知識について、もう一歩踏み込んだ説明を加えていきます。ナレッジベースの長さは記事によってまちまちなので、いくつかのブロックに分けて注釈を加えています。この記事は2番目です。1番目は、虚像とバーチャルプロパゲーション_HUD (Head Up Display) (1) です。
最初の作業は他人が作ったファイルの確認
HUDの記事には、私たちがすぐに設計データを確認できるようにサンプルファイルが付属されています。大変ありがたいですね。サンプルファイルを開いた状態で記事を読み、各設定を確認することで理解が格段に進みます。
光学設計や光学解析の仕事を受けたとき、まっさらなOpticStudioファイルから作業を始めるケースはむしろ少ないです。設計を行うときは過去の設計資産の中から近いデータを探したり、他の人が行った完成した設計データを共有してもらったり、多くの場合すでに出来上がったファイルをスタート地点にします。
自分自身が過去に設計したファイルを使うも多いです。「あの時の自分は、何を考えてこの構成にしたんだっけ?」と、過去の自分がまるで他人のように感じたことがある人がいるかもしれません。
そのようなことから、光学エンジニアが最初に取り組む作業は、「他人が作った設計ファイルがどうなっているか理解すること」になります。この作業は意外と経験と時間が求められます。筆者はプログラマーではありませんが、他人が書いたソースコードを修正する場合も、最初の関門は他社が書いたコードを読み解くこと、という話をよく聞きます。
おまけ: 分かりやすい光学設計ファイルってなんでしょう (自分への戒め)
話は少しそれますが、現在作業しているファイルは将来、他人の目に触れる可能性があることは意識したほうが良いです。例えばファイル名、v1、v1.1、v3.1-3、final、final_updated… あとから見返すとき、「いったい何が違うんや??」と思い出せなくなります。
その時は面倒でも、エディタの中にあるコメント欄に、ソースコード内のコメントのように、その行の意味を書き込んでおきましょう。きっと、自分の設計ファイルを受け取るチームメンバー、数年後にそのファイルを開く自分自身の理解を助けてくれるはずです。
仕様を確認
設計ファイルを確認するにあたって、ファイルを触る前に仕様をまとめた文書があれば、そちらにまずは目を通します。仕様に記載された項目や数値が、OpticStudioのどの場所に反映されるかを考えながら確認します。その際の注意点は、言葉の定義です。例えば、仕様表は全幅で記載されるけど、OpticStudioでは半幅で入力する場合が多いです。
今回のHUDの例の場合、以下のポイントがOpticStudioファイルを確認するうえで重要になります。
- 虚像を見るシステムで、虚像の位置は2m先。
- フロントガラスはビームスプリッタとして機能し、反射経路を使用する。
- アイボックスとして、人間の眼は横±50mm、縦±20mmの範囲で移動する。
- 人間の眼の瞳の直径は4mmとする。
- LCDディスプレイサイズは、横±12.5mm、縦±5mm。
- 結像倍率は6倍なので、虚像サイズはおよそ横±75mm、縦±30mm。
- 自分の2m先に、横15cm、縦6cm (スマホの外形サイズくらい)が置かれるイメージ
ここまでの情報から、光学系の姿を「虚像の像質を高める結像系、物体の大きさは切手2枚分くらい、2m先にスマホサイズの像が見える」などと想像して、OpticStudioのファイルを確認していきます。
システムエクスプローラを確認
OpticStudioのファイルを開いた時、まず確認したいのがシステムエクスプローラです。ここには、光学系の土台となる設定がされています。システムエクスプローラについては、光ラーニングでもいくつかの記事に分けて説明しています。アパチャー(システムエクスプローラ)_シングレットレンズの設計(OpticStudio入門) (1) などを参照してください。
アパチャーを確認
1つ目は「アパチャー」です。アパチャーは、光学系に入射する光の大きさ、つまりはマージナル光線を決定します。マージナル光線の決め方はいくつかあります。
今回のHUDのサンプルでは、「入射瞳径」が「108mm」となっていました。この設定は、物体面から見たときの入射瞳(光学系の実効的な入口)の直径が108mmとなるようにマージナル光線を出射する、という意味になります。入射瞳の直径は、HUDの設計仕様のうち、アイボックスの大きさから決まっています。つまりこの光学系は、物体面(ディスプレイの虚像)からアイボックス全体に光が入射するようにマージナル光線が出射されるように設定されています。
視野を確認
2つ目は「視野」です。視野は、光学系が対象とする物体の大きさ、つまりは主光線を決定します。視野については、視野(システムエクスプローラ)_シングレットレンズの設計(OpticStudio入門) (2) を参照してください。
今回のHUDのサンプルでは、視野タイプが「物体高さ(Object Height)」、正規化は「矩形(Rectangular)」が選択されており、物体の大きさは「横150mm、縦60mm」となっていました。この設定は、物体の大きさを物体面上での座標を直接入力するもっとも直観的な設定方法です。視野データエディタで指定した9点から主光線を生成します。視野の大きさは、HUDの設計仕様のうち、虚像の大きさから決まっています。つまりこの光学系は、本来は光源となる物体を置くのではなく、結像結果である虚像が物体として置かれており、実際に光が進む方向とは逆向きに物体と像面が置かれていることが分かります。
波長を確認
最後に波長を確認します。このファイルでは、デフォルトの0.55umのみとなっていました。HUDの構成にもよりますが、フルカラーのHUDもあります。ただ、今回のサンプルでは、すべての光学系路が反射で構成されています。レンズやプリズムでの屈折とは異なり、反射では色分散が発生しないので、純粋な反射系の場合は単一波長だけを考慮すれば大丈夫です。
ただし、ミラーの反射率や、迷光解析をする場合は、光線の波長依存性が重要になるケースがあります。今回は、あくまで結像系(点光源を点像に変換する)の設計が主目的なので、単一波長で進めます。
レイエイミングを確認
今回のHUDの設計例では使用されていませんが、サンプルファイルを確認するとき、筆者は必ずレイエイミングの設定も確認します。レイエイミングは、瞳収差を補正する、もしくは主光線が実絞りの中心を通過するような経路を探索する機能です。レイエイミングについては、近軸 vs 実光線_レイエイミングの使い方 (3) を参照してください。
HUDのような強烈な軸外し系の場合は、レイエイミングのサポートがないと光線追跡すらままならないときもあります。レイエイミングの設定を見ると、光線追跡の難しさを判断するヒントが得られ、その後の作業において光線追跡エラーが起こった場合の対処法の検討に役立ったりします。
今回のサンプルファイルでは、レイエイミングは使用されていませんでした。これは、物体面を虚像として入射瞳はまっすぐアイボックスに生成すればよく、近軸入射瞳と実際の入射瞳の位置が同じだから探索の必要がないためです。
レンズデータエディタを確認
システムエクスプローラの確認を行いながら、レンズデータエディタも確認してい行きます。カメラレンズのように光学系が一直線の透過系であれば、レンズデータエディタの理解は比較的容易ですが、反射系だったり、プリズムを含んでいる場合は一筋縄でいかなくなります。
物体距離が有限か無限か?
まず確認するのは、レンズデータエディタの0行目、物体面の厚みが「無限(Infinity)」になっているのか、数字が入った有限距離になっているかです。有限距離にある場合は、点光源がレイアウト図に示されますが、無限遠にある場合は物体面は描画されず、光学系には平行光が入射します。
絞り面の位置
次に確認するのは、絞り面の位置です。面タイプの列に、「STOP (絞)」と表記されている面が、その光学系の絞り面になります。確認ポイントは、絞り面の前後に光学系が存在するかどうかです。絞り面より前に光学系がない場合、絞り面はそのまま光学系の入射瞳になります。絞り面より前に光学系がある場合は、絞り面を絞り面より前の光学系で結像した像が入射瞳となります。詳細は、絞り、入射瞳、射出瞳_OpticStudioレイアウトでの瞳の表示 (1) を参照してください。
今回のHUDのサンプルファイルでは、物体面である虚像のすぐ下の行に絞り面が配置されています。そのため、この光学系の入射瞳はこの絞り面になります。
物体面上でサンプリングされた点光源から出射する光線のうち、主光線という基準となる光線は、入射面であり絞り面であるアイボックスの中心にめがけて出射されます。
各面のアパチャー
物体面上の点光源から入射面に向けては、点光源を頂点として円錐状に光線が出射されます。その円錐の外周構成するのがマージナル光線で、そのマージナル光線はシステムエクスプローラのアパチャーで決定するのでした。
この円錐状の光線を遮蔽するのが、レンズデータエディタの各面に設置されたアパチャーです。レンズデータエディタの面タイプの列に「(aper)((アパチャー))」と表記されていたら要注意です。この面にはユーザが定義した追加のアパチャー、面の開口が設定されています。面のアパチャーは、レンズデータエディタのクリア半径よりも優先されます。
ビネッティングファクタを設定するとき、この面のアパチャーは考慮されます。レンズデータエディタのクリア半径を見ていて、ビネッティングファクタが予想外の結果を返してきたとき、面のアパチャーが影響していることが少なくありません。ビネッティングファクタについては、ビネッティングファクタの効果_ビネッティングファクタの使い方 (2) を参照してください。
今回のHUDのサンプルファイルでは、アイボックス、フロントガラス、反射ミラー2枚にそれぞれ矩形の開口アパチャーが設定されています。このアパチャーサイズは、面のプロパティを開かないと数値を確認したり編集できないので、これから設計、解析をするうえで確認しておく必要があります。
おまけ: 座標ブレーク面の意図(激ムズ)
最後は筆者もとても苦手な、座標ブレークの理解です。軸外しの反射系では、複雑な座標コントロールが要求されます。それをシミュレーションモデルとして再現するには多量の座標ブレークを組み合わせた設定必要になります。どの座標ブレークが、どの座標ブレークと対応していて、どの順番でティルトの回転を加えているかをレンズデータエディタの設定から追跡して理解するのはとても難しいです。
面のディセンタとティルトは、座標ブレークで設定する方法と、面のプロパティでコントロールするする2つの方法があります。これは好みもあるのですが、筆者は座標ブレーク面で設定する派です。なお、面のプロパティにディセンタ・ティルトが設定されている場合、面タイプに(tilts(ティルト))と表記されます。この時は、座標ブレーク面に加えて、面のプロパティにも注意を払うようにしましょう。
3Dレイアウトで表示光線数を増やしてみる
その後は、解析機能をいくつか開いてみて、光学性能を確認していきます。1つのおすすめの確認事項としては、レイアウト図やシェーデッドモデルを開いて、描画光線本数を多くすることです。デフォルトの設定では、せいぜい10本程度しか描画されませんが、これではいろいろな情報を見落としてしまいます。光線パターンを変えながら、光線数を増やして、どこかしらの面で光線が大量にケラレていないか、逆にアパチャー内を光線が満たしていないか、1本だけ全然違う方向に追跡されている光線がないかを確認します。これらをチェックすると、その光線を使用して出力される解析機能の結果の信頼性も上がります。
まとめ
ここでは、OpticStudioのサンプルファイルを入手して開いた時、まず確認すべき点について説明しました。光学系の大枠を把握するためには、システムエクスプローラのアパチャーと視野、レンズデータエディタの物体距離と絞り面の位置、物体と像の関係を把握するのが第一歩となります。
コメント