ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
How to Model a Complex Fresnel Lens
http://www.zemax.com/kb/articles/174/1/How-to-Model-a-Complex-Fresnel-Lens/Page1.html
By Mark Nicholson
Published on 3 April 2007
 
This article describes how to model complex Fresnel lenses, in which each groove may have different defining data. It is also a useful tutorial on defining complex objects in general.

This article is also available in Japanese.

Introduction
This article is also available in Japanese.

Fresnel lenses break a normal lens into a set of concentric annular sections known as Fresnel zones:

Comparing Fresnel and conventional lenses

Fresnel lenses are lighter and occupy a smaller volume than the equivalent spherical lens. Fresnel lenses are used in lighthouse projectors, rear-projection TVs, and as solar concentrators, among many uses.

The vast majority of practical Fresnel lenses can be modeled using the Fresnel_1 object, which gives great control not only of optical properties but also of manufacturing parameters like pitch angle (the angle the inactive face makes to the lens body) and end caps. The supplied sample file {zemax root}\Samples\Non-sequential\Faceted objects\Fresnel lens radial structure.zmx shows a good example. Stray light caused by total internal reflection from the inactive face can be clearly seen.

Total Internal Reflection in a Fresnel lens
zooming into the TIRed ray

Now it is sometimes required to model more complex Fresnel objects, typically for applications like TIR Lenses™ and other complex imaging applications:

A complex Fresnel lens

Lenses like this can be easily made, using an Annular Aspheric Lens object for each Fresnel zone.

The Annular Aspheric Lens Object

For situations where precise control of the Fresnel is needed on a ring by ring basis, the Annular Aspheric Lens Object is ideal:

The Annular Aspheric Lens Object

This object has the surface shape of an even aspheric surface (radius, conic, and even-polynomial aspheric coefficients up to r16) on both faces, plus user-definable maximum and minimum diameters and thickness. It is ideal for modeling complex Fresnel lenses.

Here is an example of a complex Fresnel, in which one face is a single even-aspheric surface and the other is a highly-aspheric set of five rings:

One face of the complex Fresnel

The other face of the Fresnel

It is implemented using five Annular Aspheric Lens objects, like so:

Some of the Pickups used.

(The file is included in the zip archive you can download from the last page of this article). Note the following:

  • The materials are picked up from the first object, so the rings are all made from the same material
  • The Maximum aperture of object 2 picks up its value from the minimum value of object 1, and so on through the list of objects, so that the radial height of any ring can be set directly, and the one below it will automatically adjust so that no rings overlap, and there is no gap between the rings
  • The radius of curvature, conic constant and even aspheric coefficients on the front face of object 1 are picked up by the other annular aspheric objects, so that a single smooth aspheric curve is used on this face. As this requires about 40 pick-up solves, I wrote a simple macro to do this for me. 
  • The radius of curvature, conic constant, thickness and even aspheric coefficients on the rear face of each object are set individually, to form the Fresnel grooves

Because of the use of pickup solves to lock the objects together, only those things different between the rings must be entered. Also, object 1 is used as the reference object for the other four objects, and so when object 1 is moved the other four automatically move to remain in the same position relative to it. Therefore, the lens can be moved as a single unit by moving just this one object.

This example demonstrates one of the key advantages of the ZEMAX user interface: complex objects can be made by adding simpler objects together, and the use of pickup solves and reference objects allows the 'compound object' be be treated as if it were a single object.

The resulting object is fast to ray-trace, optimize and tolerance. If you need to export it to a mechanical CAD package, use a Boolean object to make a single object, and then export that. In this example, the Annular Aspheric Lens objects were added together, and a rectangular volume subtracted, so that a cross-section view would result:

The cross-section formed by Boolean operations

The same approach can be used to produce slices and other unusual sections of the object. The zip file at the bottom of this page contains all the files used in this article.