It is a today fact that we can create electricity from sunlight. However, most of the solar pannels are fixed, they are orientated always in the same position. In this way, we pretended to project a solar tracker system for photovoltaic (pv) pannels. To do the tracking, we will use a simplified algorithm developed by Afshin Michael Andreas, in which, using the actual date (sec, min, hours, months and year), latitude and longitude where the pannel is located. The algorithm will provide us two angles (elevation and azimuth) which will tell us where the sun is at each moment, then, orientating the pannel.

The system will be split up in two parts: Algorithm Processing System (SPA) and Control Pannel System (SCP). The SPA (computer + Arduino UNO + XBee) will have as main function execute the algorithm and send the elevation and azimuth to the SCP. On the other hand, the SCP (Arduino UNO + XBee + 2 servoengines + PV pannel) will receive the data sent by the SPA and it will process them in order to move the engines towards the correct angles.


Within the Arduino program we have stablished two integer program variables which will save the elevation and azimuth registered in the last sent. Besides also a AZIMUTHRANGE and ELEVATIONRANGE constraints are defined to represent the acceptable variation range from azimuth and elevation respect the last reception. In case that we read a value out of those bounds an error message will be sent to the SPA. Otherwise, the data will be overwritten and the engines reorientated.

Until here we have talked about the angles sent by the SPA, then, received by the SCP and the answer from the SCP to the SPA again. So, even if a full-duplex channel is allowed by the techonology used, a half-duplex technology has finally implemented. This means, when the SPA sends data, the SCP listens, and the opposite, when the SCP sends the SPA listens. The use of this type of channel is simply to make things easier. The SPA always ask for an answer (right data, wrong data or it got dark) from the SCP to know what to do. Therefore, a half-duplex channel meets all our requirements. In the SPA we send our two angles and then wait until we receive the data from the SCP (maximum 5sec). In case we receive nothing we assume that the information was lost. However, if we receive data will mean that the SCP has sent to the SPA the answer. The possible codes sent by the SPA are:

-0: correct data we will wait 20 min (establish default time) until send again the elevation and azimuth. -1: error in data. We ask for retransmit the data immediately. -2: it got dark. We stop the send of data until the next day when the algorithm give us a value greater than MINELEVATION (program constraint).

The results obtained when we compared the performance (ration of efficiency compared to maximum efficiency specified in the datasheet) of our system and a fix pannel are showed in the table and as we assumed our system improves that performance from fix pannels.

Hour          Solar tracker       Fix Pannel


Source: URSI 2014 – Development and implementation of a solar tracker for photovoltaic panels, Ramón Arquímedes Gómez Moya , Pablo Corral González.