Aug 22, 2022

Modelling a Holographic Waveguide for Augmented Reality (AR) Systems: Part 2

Category: Product News

AR systems often use holograms to couple light into waveguides. This blog shows how to improve the simple design modelled in part one of this two-part series.

AR is a technology that allows the virtual world on the screen to combine and interact with real-world scenes. This blog demonstrates how to enhance the optical system designed in the blog "Modelling a Holographic Waveguide for Augmented Reality (AR) Systems: Part 1".

Improve the design

Continuing from the last optimized system on the Part 1 blog, we need to further optimize the system to improve its optical performance. First, let's tighten some specs.

  • Set Entrance Pupil Diameter = 4 mm

  • Enlarge FOV to +/-8°

  • Make waveguide thinner, at 6 mm, as shown below

At this time, we find when we try to tighten the parameters, the design becomes unrealistic. To solve this problem, we need to constrain the design to ensure rays follow physically meaningful paths. We will enforce the following 3 conditions using relevant operands in the Merit Function:

  1. Rays cannot propagate outside of the waveguide while they’re supposed to be inside

  2. Rays cannot go behind the Hologram surface

  3. Rays must exit through the top of the waveguide without hitting the sides

To facilitate the optimization, we first add one dummy surface after surface 13 (set Material = PMMA). This surface will be used as a reference surface to ensure the system geometry is correct. Next, we add one more Coordinate Break at surface 17, right after the Exit Waveguide. Then cut the thickness from existing surface, and paste to the new Coordinate Break thickness. This new surface will be used to tilt the Image surface.

For a cleaner view of the system, we make the following change to Surface Properties…Draw of surface 14.

In the meantime, to achieve our goals more easily, we can allow more freedom by adding more variables to the design. First, allow the hologram to shift and tilt with the following settings:

  1. Link Thickness of surface 5 to the Thickness of surface 2 with a Pickup solve, Scale Factor -1

  2. Set the Thickness of surface 2 to be variable

  3. Set the Tilt X of the hologram to be variable

Second, we set the parameters Construct Z1, Y2 and Z2 of the Hologram 2 surface to be variable, so that the construction beams are fully modifiable.

Third, we set the Thickness and Tilt about X of surfaces 15 and 17 to be variable so that the exit surface of the waveguide can shift and tilt.

Constrain system to be realistic

After adding the surfaces and setting the variables, the next step is to use the merit function to control the system to be realistic. We build a Merit Function which uses the default criterion on spot size, and places detailed constraints on the positions of the surfaces. All newly added operands are meant to provide a physically practical solution from the optimizer and are save in the file “ARWaveguide.MF”. This can be saved to Documents\Zemax\MeritFunction, then loaded inside the Merit Function Editor using the Load Merit Function button. The operands used in this merit function are described below.

Constrain system to be real – step 1

First, we’ll prevent the hologram from overlapping the side of the waveguide. From the following picture you can see that point A is on the right side of the surface 9. We use RAGZ to find the position of point A on surface 4 and constrain its z position to be less than the z position of surface 9. Next, the distance from the waveguide entrance to the hologram must be positive. Use PLEN to directly specify that this length should be greater than zero.

Constrain system to be real – step 2

Second, we’ll constrain Point A to be at left side of line BC as shown. One useful concept to be applied here is the cross product. According to the right-hand rule, if you want to keep line BA  to the left of line BC  then the trick is to calculate the determinant of line BA  and line BC  as criterion, and target the value to be less than zero. Use RAGY and RAGZ to get coordinates for points B and A. The unit vector of line BC can be easily obtained with RAGB and RAGC operands.

Constrain system to be real – step 3

The next step is to ensure that the ray propagation between the surfaces 13 and 16 and between surfaces 16 and 19 is realistic. We do this by ensuring all relevant PLEN operands are positive.

Constrain system to be real – step 4

In the fourth step, follow the techniques of the step 2 to control point D to be at left side of line EF. This time, we calculate the determinant between two vectors EF  and ED to achieve this constraint.

Constrain system to be real – step 5

The final constraint is the y position of point F (marginal ray crosses surface 14) must be larger than y position of the point D as shown in the below picture. To get position of point F, we need use the dummy surface 14.

Once all these constraints are in place, optimizing the system will result in a design that is physically realistic. You will find that the performance of this system is limited by astigmatism, which can be solved by replacing the surface of Hologram 2 with an Optically Manufactured Hologram.

To access all the example files to from this tutorial please look at the full Knowledgebase article here.

Experience the power of Ansys Zemax optical design software for yourself, request a free trial today

Sean Lin, Application Engineer II, Ansys
Michael Cheng, Lead Application Engineer, Ansys