for the control of a heliostat I have a program for the calculation of azimuth and elevation. Now I am still missing the calculation of azimuth angle and elevation angle for setting the mirror. While searching for examples, I discovered this post here. https://astronomy.stackexchange.com/a/43318/46036 My prototype is located in the northern hemisphere and is aligned in north-south direction. In the rest position, the mirror points to the south (azimuth 90°, elevation 0°). The target is 55° southwest and 30° above the mirror horizon.

Can you tell me with what calculations I can determine azimuth angle and elevation angle of the mirror?

Many thanks in advance! Itsme

enter image description here enter image description here


thank you very much. Your answer helped me a lot to realize my mistake. I had to remove a servo from the prototype that was a solar tracker and replace it with a stepper motor. Due to carelessness, I positioned the angle sensor incorrectly. Please excuse my incorrect description of the angle position with which I caused corrections of the calculation. After the correct positioning of the angle sensor it now looks like this.

My prototype is located in the northern hemisphere and is aligned in north-south direction. In the rest position the mirror points to the south (azimuth 180°, elevation 0°). The target is 55° southwest and 30° above the mirror horizon.

Now it should be possible with the example from the contribution https://astronomy.stackexchange.com/a/43318/46036 it should be possible to implement the correct calculation.

Is the following calculation correct?

mirrorAz = 55° + (SunAz - 55°) / 2

mirrorAlt = 30° + (SunAlt - 30°) / 2

Added 04/27/2022

The azimuth axis currently has the following orientation. North = 0° East = 90° South = 180° West = 270°

At my location it was very cloudy yesterday. In the short cloud gaps I could test the calculations in the afternoon. At that time the SunAz = 213.51° and the SunAlt = 50.18°. These values correspond to the NOAA table.

mirrorAz = 55° + (213,51° - 55°) / 2 = 134,26°

mirrorAlt = 30° + (50,18° - 30°) / 2 = 40,09°

The mirror reflection mirrorAlt reached 30° relatively accurately but mirrorAz is far off. The value of mirrorAz should actually be about 226°.

How can this large mirrorAz difference occur?

With best regards Itsme

  • 1
    $\begingroup$ You az angles seem non-standard. Usually 0 is North, 90 is East, and South would be 180. Based on the angles you gave it seems like your 0 point is West, and 90 is South. Just looking for confirmation you meant to do it that way. Also, if your mirror doesn't rotate about the center of the mirror, that will change things too. $\endgroup$ Apr 26, 2022 at 0:10
  • $\begingroup$ It looks like you have the right idea. I'm still not sure about the Azimuth system you're using, but as long as you understand it, that's all that matters. $\endgroup$ Apr 27, 2022 at 3:17
  • $\begingroup$ After correction mirrorAlt is ok but not mirrorAz. See above $\endgroup$
    – Itsme
    Apr 27, 2022 at 9:49
  • $\begingroup$ You keep saying your target is 55deg SouthWest, but 55deg is NorthEast. So that is likely where the issue lies. $\endgroup$ Apr 27, 2022 at 13:06
  • $\begingroup$ That was exactly my problem. Thank you very much, you have helped me a lot. It is not 55°. Correct is 235°. I was confused by this description. [link] (web.archive.org/web/20170618104429/http://…) $\endgroup$
    – Itsme
    Apr 29, 2022 at 9:22

1 Answer 1


As I said in my comment, you appear to be using an Azimuth system different from what most astronomy programs will return it in. As long as you're consistent, it won't matter, but double check to make sure.

To make the problem easier, subtract off the target's Alt and Az from the Sun's Alt and Az, so that the target is the 0,0 point.

After that, the correct angle is simply 1/2 Alt, and 1/2 Az. To convert that back into Alt/Az coordinates, add 30 to the Alt, and 90 to Az.

So, if the Sun is at 50 Alt, 40 Az. Subtract off the target's coordinates to get 20, -50. Divide by two: 10, -25. Add back the target's coordinates to get the correct Alt/Az for the mirror: 40Alt, 65Az.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .