0% found this document useful (0 votes)
64 views8 pages

Project Jaurnal

This document describes an Arduino-based dual-axis sun tracking solar system with an LCD display. The system uses two servo motors controlled by an Arduino Uno microcontroller board to rotate a solar panel based on input from four Light Dependent Resistors. This allows the panel to track the sun for increased efficiency. The document outlines the electrical and mechanical components, code, and circuit diagram required to build the system.

Uploaded by

Abu Salman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views8 pages

Project Jaurnal

This document describes an Arduino-based dual-axis sun tracking solar system with an LCD display. The system uses two servo motors controlled by an Arduino Uno microcontroller board to rotate a solar panel based on input from four Light Dependent Resistors. This allows the panel to track the sun for increased efficiency. The document outlines the electrical and mechanical components, code, and circuit diagram required to build the system.

Uploaded by

Abu Salman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Project Title: Arduino Based Dual-Axis Sun Tracking Solar

System with LCD (Liquid Crystal Display).


Note: This paper is based on project and the whole things is written for project related subject combining theoretical and practical issues

Name: 1 Md. Abu Salman, 2Md. Ataur Rabby, 3Md. Raihan Kabir, 4Hasib Al Tahsin
Dept. of Electrical & Electronic Engineering (EEE)
Jashore University of Science & Technology
Jashore-7408, Bangladesh
Email: [email protected], [email protected], 3raihankabir151110 @gmail.com

Abstract––We know that if we give sun light to a solar panel it will produce electricity, so simple matter. But then the
efficiency of solar panel is only 32% that is very low. So we need to improve the efficiency in case of our desired satisfaction
for demand of energy. We know that sun rises in the east and sets on the west. Which means it simply covers around 180
degrees but the panel stays still for general solar system. From the comparison of producing electricity we can see that the
panel’s efficiency is highest when the sun is around 90 degrees. So if we can rotate the panel with the sun it will increase
the solar panel efficiency dramatically. Later we have to discuss and details to show how we can move solar panel with the
sun using Arduino UNO microcontroller board, Liquid Crystal Display, Light Dependent Resistor etc. to increase the
efficiency using this new innovative project.

Keywords – Solar Panel; Arduino UNO; LDR (Light Dependent Resistor); LCD (Liquid Crystal Display); Solar panel
efficiency

Ι. INTRODUCTION
Let’s begin to introduce with Arduino UNO & its function for this project:-

The Arduino UNO is an open-source microcontroller board based on the Microchip ATmega328P microcontroller and
developed by Arduino.cc. The board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to
various expansion boards (shields) and other circuits. The board has 14 Digital pins, 6 Analog pins, and programmable with the
Arduino IDE (Integrated Development Environment) via a type B USB cable. It can be powered by a USB cable or by an external
9 volt battery, though it accepts voltages between 7 and 20 volts. It is also similar to the Arduino Nano and Leonardo. The hardware
reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino
website. Layout and production files for some versions of the hardware are also available. "Uno" means one in Italian and was
chosen to mark the release of Arduino Software (IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE) were the
reference versions of Arduino, now evolved to newer releases. The Uno board is the first in a series of USB Arduino boards, and
the reference model for the Arduino platform. The ATmega328 on the Arduino Uno comes preprogrammed with a boot loader
that allows uploading new code to it without the use of an external hardware programmer [1].

Here, Arduino UNO is used for controlling the servo motor while LDR (Light Dependent Resistor) is used for input switches
or input voltage sources for commanding microcontroller board. For this we need two parts. That’s are electrical part & mechanical
part. Let’s know the necessary parts and equipment’s for this project:

Electrical Parts:

1) Arduino UNO ( UNO R3) board with power jack


2) Two Servo motors (180° rotation)
3) LDRs (Four pieces for this project)
4) 10k resistors
5) Two variable resistors / Potentiometer (10k)
6) Breadboard and connecting wires
7) 16×2 LCD (Liquid Crystal Display)

Mechanical Parts:

1) Plus shaped hardboard’s detector which have four holes in its four sheets.

[1]
2) Wooden Frame (Basement & Stand)
3) Glue Gun
4) Superglue or any adhesive glue for joining parts.

ΙΙ. HOW IT WORKS


First of all make a sensor of 4 LDRs with sheets between
them. The white dots are the LDRs (As shown in Fig.1). When
the stick on top is righted to the sun or the brightest point the
four LDRs get the same amount of light on them.

Example-1: When the light is left on top:


right-top, right-down, left-down are in the shadow
and left-top get the most light.
Example-2: When the light is on top:
left and right down are in the shadow and top is in the light [2].

Figure 1: LDR's Position (Left); Hardboard’s


Detector (Right)

ΙΙΙ. REQUIRED ARDUINO IDE CODE


The required Arduino IDE code for this project is given below:

#include <LiquidCrystal.h> // include LCD library

#include <Servo.h> // include Servo library

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;

LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

// The LCD pins description details are here:

* LCD RS pin to digital pin 12

* LCD Enable pin to digital pin 11

* LCD D4 pin to digital pin 5

* LCD D5 pin to digital pin 4

* LCD D6 pin to digital pin 3

* LCD D7 pin to digital pin 2

* LCD R/W pin to ground

* 10K resistor:

* Ends to +5V and ground

* Wiper to LCD VO pin (pin 3)

* LCD VDD to +5V

* LCD VSS to ground

Servo horizontal; // horizontal servo

int servoh = 90; // stand horizontal servo

Servo vertical; // vertical servo

int servov = 90; // stand vertical servo

// LDR pin connections

[2]
// name = analogpin;

int ldrlt = 0; //LDR top left

int ldrrt = 1; //LDR top right

int ldrld = 2; //LDR down left

int ldrrd = 3; //LDR down right

void setup()

Serial.begin(9600);

lcd.begin(16,2);

// Print a message to the LCD.

lcd.print("Solar Tracker Initiate"); // The LCD first shown this in its display

// servo connections

// name.attacht(pin);

horizontal.attach(9);

vertical.attach(10);

void loop()

int lt = analogRead(ldrlt); // top left

int rt = analogRead(ldrrt); // top right

int ld = analogRead(ldrld); // down left

int rd = analogRead(ldrrd); // down right

int dtime = analogRead(4)/20; // read potentiometers

int tol = analogRead(5)/4;

int avt = (lt + rt) / 2; // average value top

int avd = (ld + rd) / 2; // average value down

int avl = (lt + ld) / 2; // average value left

int avr = (rt + rd) / 2; // average value right

int dvert = avt - avd; // check the difference of up and down

int dhoriz = avl - avr;// check the difference of left and right

if (-1*tol > dvert || dvert > tol) // check if the difference is in the tolerance else
change vertical angle

if (avt > avd)

servov = ++servov;
[3]
if (servov > 180)

servov = 180;

lcd.print("Panel turns East");

lcd.display();

delay(100);

else if (avt < avd)

servov= --servov;

if (servov < 0)

servov = 0;

lcd.print("Panel turns West");

lcd.display();

delay(100);

vertical.write(servov);

if (-1*tol > dhoriz || dhoriz > tol) // check if the difference is in the tolerance
else change horizontal angle

if (avl > avr)

servoh = --servoh;

if (servoh < 0)

servoh = 0;

lcd.print("Panel turns Left");

lcd.display();

delay(100);

else if (avl < avr)

servoh = ++servoh;
[4]
if (servoh > 180 )

servoh = 180;

lcd.print("Panel turns Right");

lcd.display();

delay(100);

else if (avl == avr){

horizontal.write(servoh);

delay(dtime);

}// code ends here

Here’s the code for LCD is given. Its shows LCD’s different functions according to panel position. And one thing should
mention in that, this code is only for 180 degree rotation servo motor. It’s not for 360 degree continuous rotation servo motor. For
360 degree servo motor, this code will be different in some cases.

IV. REQUIRED CIRCUIT DIAGRAM


In Fig.2, the required circuit diagram is given. Servo motors
have three wires: power, ground, and signal. The power wire is
typically red, and should be connected to the 5V pin on the
Arduino board. The ground wire is typically black or brown and
should be connected to a ground pin on the Arduino board. The
signal pin is typically yellow, orange or white and should be
connected to a digital pin on the Arduino board. Note that servos
draw considerable power, so if you need to drive more than one
or two, you'll probably need to power them from a separate
supply (i.e. not the +5V pin on your Arduino). Be sure to connect
the grounds of the Arduino and external power supply together
[3].
Figure 2: The required circuit diagram

V. WHOLE MECHANICAL STRUCTURE


The whole mechanical structure for this project is shown here in below (Fig.3):

In the whole mechanical structure, the main four Parts are:

1) Hardboard’s detector / Panel container: - Hardboard


detector is for contains the panel and LDRs attached
with it.
2) Servo Motors (Vertical & Horizontal):- Two servo
motor are used here for controls the panel. One motor
controls the panel or rotates the panel in the horizontal
axis and the other controls it in the vertical axis. Both of
the motor rotates the panel within one-hundred eighty
degrees (180°).
3) Stand: - Stand is used for contains the servo motors &
the hardboard’s detector. It’s one side is attached with
basement and the other side is attached with horizontal
servo motor. Figure 3: The whole mechanical structure
[5]
4) Basement: - Basement is the part which contains these whole parts (i.e. Hardboard’s detector, Servo motors and Stand).

VΙ. ANALYSIS OF THE PROPOSED SUN TRACKER


The ultimate objective of this project is to investigate whether static solar panel is better than solar tracker, or the opposite.
This project is divided into two stages namely, hardware and software development. In hardware development, four light
dependent resistors (LDR) were utilized to capture the maximum light source from the sun. Two servo motors also were employed
to move the solar panel to maximum light source location sensed by the LDRs. As for the software part, the code was constructed
by using C programming language and was targeted to the Arduino UNO controller. The performance of the solar tracker was
analyzed and compared with the static solar panel and the result showed that the solar tracker is better than the static solar panel
in terms of voltage, current and power. Therefore, the solar tracker is proven more effective for capturing the maximum sunlight
source for solar harvesting applications [4].

VΙΙ. RESULTS AND DISCUSSIONS

The results revealed that the location of the solar panel was one of the important things in collecting its output voltage and
current. It was also discovered that solar panel would perform the best when facing south as this would help most exposure from
the sun as it moved from east to west. For most locations, the peak performance hours of the day were between 9AM till 12PM.
This was when the sun was at its highest illumination.

The measurements of the data were taken from a wide area where there was no obstruction that would prevent the tracker
from getting the maximum sunlight. The measurement of output voltages and currents were taken at two different days from 9AM
until 6.00PM. The data collected is demonstrated in the graphs below. It was a very sunny day for day 1, but it was quite cloudy
on day 2. There were two similar types of solar panels used which followed these conditions. These two conditions enable the
panels to capture the highest and lowest output voltages and currents at the peak performance of sunlight [5].

Static solar panel with 10 degree of angle facing south


B) Solar panel with tracking system facing south

TABLE 1: SOLAR PANEL DATASHEET FOR VOLTAGE & CURRENT

Maximum Power Current (I mp) 0.1A


Maximum Power Voltage (Vmp) 12V
Short-Circuit Current (Isc) 0.11A
Open-Circuit Voltage (Voc) 14.4V

Figure 4: Voltage vs. Time curve for sunny day Figure 5: Current vs. Time curve for sunny day

Here Fig. 4, Fig. 5 and Fig. 6 shows the graph of the output voltage (V), current (I) and power (P) with respective to time (t)
respectively for sunny day (Day 1). Also these graphs shows the comparison between the general panel and the proposed sun
tracker. As presented in the voltage and current graphs, the output power graph also shows that the output power produced by
solar panel with tracking system was higher than the output of general solar panel at most of the times.

[6]
Figure 6: Power vs. Time curve for sunny day Figure 7: Voltage vs. Time curve for cloudy day

Similarly Fig. 7, Fig. 8 and Fig. 9 shows the graph of the output voltage (V), current (I) and power (P) with respective to time
(t) respectively for cloudy day (Day 2). And also these graphs shows the comparison between the general panel and the proposed
sun tracker.

Figure 8: Current vs. Time curve for cloudy day Figure 9: Power vs. Time curve for cloudy day

As it can be seen in all the graphs, the data for output voltage, current and power during day 1 is more stable than day 2. This
was because day 1 was a very sunny day this led to the maximum illumination obtained from the sun at most of the times, but for
day 2, it was quite cloudy at certain times. The cloud blocked the sun and caused the solar panel not to receive maximum
illumination from the sun.

The main benefaction of this paper is to present an intelligent dual axis sun tracking solar system. Sun tracking system with
orientation and titration increases the power or efficiency of solar panel up to 40 %. To obtain the maximum energy from the sun
the panel has to move in correct direction with correct angle and make the panel perpendicular to the sun. The sun tracking solar
system or project was designed in that way that minimum number of component can be used and they can be fit into the small
package so that the cost of system is less expensive. The proposed of this system is to obtain the maximum energy from the sun
and make the system eco-friendly with the environment. The power consumption is less used by sun tracking solar system. Sun
tracking solar system is reliable and mostly used for production of high efficiency in most of the countries [6].

VΙΙΙ. CONCLUSION

In conclusion, the performance of dual-axis solar tracking project was fruitfully evaluated. Based on the data collected, it
can be concluded that the dual-axis solar tracking project is better than the general solar system in terms of output voltage, current
and power. For this reason, the project has been proven effective for capturing maximum sunlight source for solar harvesting
applications. The economically and environmentally friendly dual-axis solar tracking project also can be a great technique in
utilizing the superiority of solar energy thus solving the increasing demand of electricity problem. For further research in the
future, some improvement to the project can be made in order to improve the output. It is recommended that the analysis to be
done with a higher intensity solar panel that produces higher output voltages and current. By doing this, the output power will be
large compared to using general solar panel.

[7]
ΙX. REFERENCES
[1] Arduino UNO-Wikipedia; website: https://en.wikipedia.org/wiki/Arduino_Uno

[2] Arduino Solar Tracker; website: https://www.instructables.com/id/Arduino-Solar-Tracker/

[3] Arduino-Sweep; website: https://www.arduino.cc/en/tutorial/sweep

[4] Performance analysis of dual-axis solar tracking system; Authors’: N.Othman, M.I.A. Manan, Z. Othman, S.A.M. Al
Junid; website: https://www.researchgate.net/publication/261206116_Performance_analysis_of_dual-
axis_solar_tracking_system

[5] Performance analysis of dual-axis solar tracking system; website: https://ieeexplore.ieee.org/document/6719992

[6] An Analysis of Automatic Dual Axis Sun Tracking Solar System; website:
https://www.ijireeice.com/upload/2016/december-16/IJIREEICE%208.pdf

[8]

You might also like