In vehicle lighting, we frequently use design concepts like this to create taillamps, turn indicators, and similar functions. Speos provides a robust parametrization for the definition of its collimators, and a step-pillow method that optimizes each pillow individually to direct light toward a user-defined target area. These two powerful tools can be combined within the Optical Lens feature to achieve high-performance designs based on direct collimation.
Overview
Understand the simulation workflow and key results
Optimizing a lens incorporating collimators is a complex task that requires both technical rigor and a high degree of creativity and an optical simulation tool like Speos. However, the process can be structured into several fundamental steps.
Step 1 - Determine the required number of LEDs
First, estimate the number of LEDs needed to meet the target photometric performance and the target aspect. Then focus on optimizing the collimators.
Step 2 - Optimize the collimators
It is recommended to start with a neutral front face (minimal angular spread) so the effect of the collimator can be clearly evaluated. A large spread on the front face sends light in many directions and can hide the real contribution of the rear optics. Gradually increase the angular spread to ensure coverage of potential shadow regions while avoiding excessive hot spots in the center. Once the collimators provide an appropriate angular distribution that preserves homogeneity without significantly degrading efficiency, the front-face design can be refined. The influence of the front face can initially be assessed using a step-pillow definition. If the previous steps were correctly performed, the resulting light distribution should already resemble the target.
Step 3 - Optimize front face
Finally, define several visually imperceptible groups with slightly different angular spreads. When superimposed, these groups allow the design to achieve a highly efficient and precise light distribution while maintaining a uniform visual appearance.
In this article we will be talking about the combination of two design features, TIR Lens Overview and Optical Lens Overview . If you never used them before, please refer to the documentation.
Run and Results
Instructions for running the model and discussion of key results
Step 1 - Determine the Required Number of LEDs.
Open GENERIC_CAR.scdocx, you will find all the inputs under “Rear Door/TL L” to create the lenses.
Let us assume that, due to inherent design, budgetary, and packaging constraints, the position of the light sources has been fixed to a specific number of LEDs, uniformly distributed on the plane perpendicular to the vehicle’s X-axis. This configuration will serve as today’s starting point.
First, using the set of coordinate systems that define each LED position, we need to specify all collimator locations within an Optical Lens.
These axis systems can be found directly in the same component.
Create a new Optical Lens for each part lenses (there will be one in the fender and another in the trunk) and for simplicity just click on rectangular. Step Pillow and TIR lenses are available in Rectangular, Circular, Freestyle Rectangular and Freestyle Circular as well.
To create two lenses like below follow the steps:
- Create a new Optical Lens Rectangular.
- Visualize the axis systems of LEDs, “Support OL Fender”, “PCB Fender” and “Target” axis system.
- Under General, click on source type = TIR Lens.
- Under Support, click on orientation type = Combined TIR Lens Only.
- Under Target, click Axis = Y axis (from target axis system).
- Under Target, click Orientation = X axis (from target axis system).
-
Go under TIR lenses tab and create 6 TIR lenses. For each TIR lens:
- Define the source position from the axis system.
- Define the optical axis from the support plane by selecting “Support OL Fender”.
- Set Input Radius = 4 mm.
- Set Depth = 3 mm.
- Set Support thickness = 1 mm.
- Select a Contour Surface = “TrimmigSurface Fender”.
- Compute.
- Repeat the same steps for Trunk.
As an initial step, we aim to visualize the collimator layout without any influence from the pillows—that is, to observe the construction process without the effect of the front face. Nevertheless, we will select a small spread to avoid an overly constrained configuration.
To create the pillows do as it follows:
- Set Orientation mode = Inner support.
- Under Styling set as origin the Target axis system, as Projection its positive Y direction and as Orientation the reversed X direction.
- Set X stat = -86 mm, X end = 73 mm, Y start = -25 mm and Y end = 4 mm and 1.5 per 1.5mm as size.
- Under Ungrouped Elements Set type = Step Pillow and define in X and Y a spread from -5° to +5°.
- Compute.
Step 2 - Optimize Collimators
A recommended best practice at this stage is to observe the shadows and the projections of the collimators onto the opposite side, specifically on the front face, in order to ensure that the position of the collimators is correct and that total area is properly divided among all collimators.
The more challenging areas for a homogeneous lit aspect will be the union between collimators and the support thickness that would be solved increasing the spread of the collimators.
To start with the optimization, fix the front pillows in both lenses to “Step Pillow” with ± 5° in x and y directions. We’ll adapt progressively the spread of the collimators, from 0° and this is what you can find in the summary of your virtual “stickers session” of our first iterations (See in yellow the only parametrization modifications). From the bottom to the top, see how we are creating an even distribution with the collimators, vanishing the shadows and hot spots. But later on, this could have a cost in less efficiency in the photometry as spreading a lot the lighting could make our device less efficient.
Step 3 - Optimize Front Face
From the initial pillow definition (± 5° in X and Y) we can expect an intensity result as it follows:
Where all the light is concentrated in ± 5° with small tolerances (for sure, the effect of giving a spread in the collimators would slightly affect the precision of the target).
Considering we are designing a Turn Indicator, we’ll need to pass certain regulations that actually imply sending the light with a spread ± 20° in x and ± 10° in y. If we apply this to both lenses and overlap the photometry with the regulation grid, we can observe:
It can be observed that the initial flux is oversized, causing the regulation to fail due to exceeding the maximum limit. This example illustrates how the regulation can be met more easily with the support of Step Pillow. The next step would be to use the Virtual Lighting Controller to evaluate whether the flux is indeed oversized and to determine the actual amount of flux required. Currently, the system uses 12 LEDs, each delivering 20 lm.
By doing this, we’d need 8.6% of the initial flux (1.72 lm each) to pass the regulation or 10.3% of the initial flux (2.06 lm each) to reach a +20% margin over regulation.
Despite this, this is not the most efficient configuration. The Step Pillow generates an approximately even spread, but not all areas require the same amount of light. In the center of the distribution, the intensity should be higher. So, how can we redistribute the light to make the system more efficient?
We can define groups of pillows with different parameterizations (not excessively different, to avoid visible patterns such as hot spots or shadows) in order to direct more light toward the center. See Managing Groups and Elements .
We defined pillows with a size of 1.5 mm. This is advantageous for creating pillows with slightly different parameterizations, as the human eye can barely perceive small luminance variations at this scale. Therefore, the key recommendations are: use small pillows; avoid large parameterization changes between groups; and avoid placing all pillows with different parameterizations together, as that would make the differences more noticeable.
For that purpose two different groups have been created with different spreads, the yellow one sending light on ± 10° in X and ± 10 in Y and the violet sending ± 20.5° in X and ± 10.5° in Y. The idea is saving some energy while keeping the lit aspect intact.
By doing this, we would need 7.1% of the initial flux (1.42 lm each) to pass the regulation or 8.5% of the initial flux (1.70 lm each) to reach a +20% margin over regulation.
We can continue this process to evaluate two competing realities: what is more important for you, reducing the flux and being efficient or keeping or even improving the homogeneous lit aspect?
Important Model Settings
Description of important objects and settings used in this model
Intensity Sensor
The regulation to be evaluated is loaded into the simulation results through the Intensity Sensor. In the “Speos input files” folder you can find the template:
ECE_R6_RearDirectionIndicator_Cat2a_Single-Lamp_M1N1M2M3N2N3_Left_visibility.xml
To apply this template correctly, the X angular range should extend at least from –45° to +80°, and the Y range from –15° to +15°. In practice, some additional margin is required to evaluate the results properly, so we expanded the limits by 5° on each side: X from –50° to +85° and Y from –20° to +20°.
It is also important not to increase the resolution excessively. In the current setup, each pixel represents 0.1°. Increasing the resolution introduces an averaging effect, so the pixel size should never approach or exceed the characteristic dimensions of the regulation template, which uses ellipses of approximately 0.25°.
More info in the Speos User Guide: Understanding the Parameters of an Intensity Sensor
Observer Sensor
It should be noted that many viewpoints are simulated with this sensor. Since the GPU will likely be used to accelerate the simulations, VRAM may become a limiting factor, so best practices should be followed.
First, the simulation is separated by layer = source, which automatically multiplies the size of each sensor by 12 (because there are 12 light sources, and their contributions are analyzed independently—one layer per source for each sensor). As a result, it may be necessary to adjust the number of observer locations and the number of layers if VRAM limitations arise.
More info in the Speos User Guide: Creating an Observer Sensor
Environment Source
The unlit appearance is simulated using an HDR image that represents the surrounding environment. This approach is the most efficient way to reproduce the ambient lighting conditions.
More info in the Speos User Guide: Environment Type Overview
Updating the Model With Your Parameters
There is still room for improvement by creating additional groups. If new groups are introduced, one of them could be dedicated to sending light toward H ±20, while the others focus on concentrating the light around HV.
However, there will always be a trade-off between two competing objectives: maximizing efficiency by reducing flux losses versus maintaining—or even improving—the uniform appearance of the illuminated area.
If the goal is to enhance homogeneity, the proposed approach is the following: use a single group of pillows and slightly increase the spread of the collimators.
Taking the Model Further
Information and tips for users that want to further customize the model
Unlit Aspect
To improve the aspect, you will need to fine tune the spread of the collimators and preferably use the same parametrization in all pillows. To improve the performance and reduce the flux, you would need to minimize the spread of the collimator and concentrate more light in the center by changing the pillow definition of at least one group at the expense of homogeneity.
The final step consists of simulating the unlit appearance. To do so, create an Environment Source or reuse the existing one named “Environment_Source.” To properly use these sources, you must run an inverse simulation including the same geometries, the Environment_Source, and the Observer sensor. Alternatively, you may directly compute the simulation “3DVisualization_Unlit,” where all required elements are already configured.
The expected result should be similar to the following.
Once completed, navigate to Creation → Operations in Speos 360files, select “Map Union” to preserve the separation of sources by layers, and choose both files to merge them.
With the merged map loaded in the Speos Virtual Reality Lab, open “Vision Parameters,” set the Adaptation Type to Local Adaptation, configure the appropriate adaptation and luminance parameters, and enable the glare effect.
It is possible to optimize this concept easily and find the best tradeoff using optiSLang, see an example with light guides: Exterior Lightguide Optimization – Ansys Optics .
For more details about visualization parameters: Simulation Parameters for Visualisation Best Practices – Ansys Optics .
Visibility prisms
If you are an expert in automotive lighting, you have probably noticed that something is missing in the regulations discussed above: visibility requirements.
According to this regulation, it is mandatory to deliver more than 0.3 cd from 45° inboard to 80° outboard, and from –15° to +15° in the vertical direction, and this is clearly not fulfilled by the previous photometries (see below).
Although 0.3 cd may not seem like a demanding target, let us analyze what is actually visible from these directions. From the table below, we can draw two main conclusions:
-
45° inboard, particularly at +15° and –15°, is extremely challenging. The lens is not visible at all in these directions, which is a very typical limitation in automotive lighting systems. Only parasitic light reaches these points.
-
80° outboard should be relatively easy to satisfy, as the function is entirely visible from this direction. However, we are not intentionally sending additional light outboard. The current optical definition is highly efficient, concentrating nearly all the flux between 20° inboard and 20° outboard. As a consequence, the design becomes very sensitive to aperture variations and requires fine tuning.
Let’s focus on the first challenge.
A typical strategy to improve inboard visibility is to integrate visibility prisms into the outer lens. We will follow this approach. Since this modification inevitably impacts styling, we will design a grid aligned with the styling lines to maintain aesthetic consistency.
The concept is the following: a portion of the defined lenses will transmit light without spreading it toward the outer lens. The spreading will then be introduced at the outer lens level in order to resolve the visibility issue.
The first step is to define a new grid to create two Optical Lenses – Freestyle Rectangular. These can be found under: RearDoor/TL L/Curves.
We then modify the parametrization of the pillows located directly behind this grid, creating a new group (see green pillows).
Two possible strategies can be considered:
- Use Step Pillow with a very small aperture (e.g., 0.1°).
- Use a Freeform definition with X angle = 0° and Y angle = 0°.
After that, the two freestyle rectangular optical lenses can be created following the defined grid. The general parametrization for the fender is shown below.
This setup implies:
- We assume incoming light is perfectly collimated by selecting the Directional type input.
- We set Orientation type = Outer support to create the pillows inside the lens geometry.
Two different groups have been defined:
- The first group spreads the light slightly more to ensure compliance with the outboard visibility requirement.
- The second group redirects the light fully inboard.
With this configuration:
- 15.6% of the initial flux (3.12 lm per lens) is required to meet the regulatory minimum.
- 18.7% of the initial flux (3.74 lm per lens) is required to achieve a +20% safety margin above the regulation.
Additional Resources
Additional documentation, examples and training material
- TIR Lens Overview
- Optical Lens Overview
- Step Pillow
- Radii
- Managing Groups and Elements
- Exterior Lightguide Optimization – Ansys Optics
- Simulation Parameters for Visualisation Best Practices – Ansys Optics
- Understanding the Parameters of an Intensity Sensor
- Creating an Observer Sensor
- Environment Type Overview
Appendix
Additional background information and theory
Using Step Pillows
In Speos, we can use the Step Pillow beam pattern (similar to freeform in optical surfaces) and define the expected area each pillow should spread; and each pillow would be optimized individually to achieve it (in the measure of what is physically possible). This is different from other pillow definitions, unlike e.g. Radii , the input of step pillow is the expected performance, and the geometry would be automatically optimized.
The main parameters of Step Pillow are “X start”, “X end”, “Y start” and “Y end” (note that we are using the default target, intensity, and the parameters are given in degrees). By modifying these, you can define a squared region of the space to send all the light, as uniformly as possible.