0% found this document useful (0 votes)
45 views30 pages

Engineering Project3.0

The document presents a project on designing and implementing a single-axis solar tracking system using an Arduino-based control mechanism to enhance solar panel efficiency. It details the system architecture, including the use of Light Dependent Resistors for sunlight detection and a servo motor for panel adjustment, along with Bluetooth integration for real-time monitoring. The project aims to provide a low-cost, efficient solution for small-scale solar applications while addressing the limitations of fixed solar panel installations.

Uploaded by

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

Engineering Project3.0

The document presents a project on designing and implementing a single-axis solar tracking system using an Arduino-based control mechanism to enhance solar panel efficiency. It details the system architecture, including the use of Light Dependent Resistors for sunlight detection and a servo motor for panel adjustment, along with Bluetooth integration for real-time monitoring. The project aims to provide a low-cost, efficient solution for small-scale solar applications while addressing the limitations of fixed solar panel installations.

Uploaded by

3bdo.alg21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

UNIVERSITY OF TRIPOLI

ELECTRICAL &
ELECTRONIC
2
5

ENGINEERING
EE491: Computer Application & Design Lab

Solar Tracking system

PROPOSED By: Abdulrahman Zoheir


Alshawesh
ID: 2180206095
Administrated By: Dr. Tawfiq Alnawesri
1 | Page Moayed Bennour
Solar Tracking system

ABSTRACT

The efficiency of solar panels is highly dependent on their orientation relative to the sun.
This project presents the design and implementation of a single-axis Solar Tracking
System using an Arduino-based control mechanism to maximize energy absorption
throughout the day.

The system employs two Light Dependent Resistors (LDRs) as light sensors to detect the
sun's position and a servo motor to adjust the solar panel's angle accordingly. A Bluetooth
module is integrated to transmit real-time angular positioning data to a mobile device or
computer, enhancing system monitoring.

The entire system was first simulated using Proteus software to validate the tracking logic
before being implemented practically on a breadboard. The Arduino code was developed
to continuously compare LDR values, adjust the servo position, and send angle feedback
via Bluetooth.

The results demonstrate that the system successfully tracks sunlight with high
responsiveness and stability. This offers a low-cost and energy-efficient solution suitable
for small-scale solar applications.

Overall, the project highlights the potential of combining simple electronic components
with embedded control systems to develop intelligent and sustainable energy
technologies.

Abdulrahman Alshawesh, University of Tripoli

2 | Page Abdulrahman Alshawesh


Solar Tracking system

Chapter One :

Introduction

3 | Page Abdulrahman Alshawesh


Solar Tracking system

1.1 Background

The increasing demand for clean and renewable energy has intensified interest in the
development of solar power systems. Solar energy offers a sustainable and
environmentally friendly alternative to conventional energy sources, which are often
associated with harmful emissions and finite availability. As a result, solar panels have
become a widely adopted solution for generating electricity, particularly in off-grid and
energy-efficient systems.

However, the efficiency of solar panels depends heavily on their orientation relative to
the sun. Fixed solar panels, which are mounted at a stationary angle, can only achieve
peak performance during limited hours of the day when sunlight strikes the panel
perpendicularly. During other times, the energy conversion efficiency drops significantly
due to suboptimal light incidence.

To address this challenge, solar tracking systems have been developed. These systems
dynamically adjust the orientation of solar panels throughout the day to follow the sun's
path across the sky. By maintaining an optimal angle of incidence, solar trackers can
significantly enhance the total energy output of a photovoltaic (PV) system.

Among the various types of tracking systems, single-axis trackers are commonly used
due to their balance between performance and simplicity. They rotate the panel along one
axis — typically horizontal or vertical — to align with the sun’s movement from east to
west. This project focuses on designing a low-cost, Arduino-based single-axis solar
tracking system that uses light sensors to detect the direction of sunlight and adjust the
panel accordingly.

The figure below illustrates the basic concept of a solar tracking system compared to a
fixed solar panel setup.

4 | Page Abdulrahman Alshawesh


Solar Tracking system

Figure 1.1: Comparison between fixed solar panel and solar tracking system.

1.2 Problem Statement

Solar panels are widely used to harness renewable energy from the sun, offering an
environmentally sustainable solution to meet global energy demands. However, the
efficiency of these panels is strongly influenced by their orientation with respect to the
sun’s position in the sky. Most conventional installations rely on fixed-angle panels,
which are mounted in a static position optimized for average sunlight conditions. This
approach causes a significant portion of the day’s sunlight to be lost due to the changing
position of the sun from sunrise to sunset.

As the sun moves across the sky, the angle at which sunlight strikes a fixed panel varies,
reducing the effectiveness of energy capture. This inefficiency becomes more
pronounced during early morning and late afternoon hours when the incident angle is
steep, resulting in reduced power output and suboptimal utilization of solar resources.

5 | Page Abdulrahman Alshawesh


Solar Tracking system

To solve this problem, automatic solar tracking systems have emerged as a promising
solution. These systems dynamically adjust the panel’s position in real-time to ensure that
it consistently faces the sun at the most effective angle throughout the day. While
commercial tracking systems exist, many are costly, complex, and not easily adaptable
for educational or small-scale applications.

This project addresses the need for a low-cost, efficient, and easily implementable solar
tracking system by utilizing an Arduino microcontroller, servo motors, and light-
dependent resistors (LDRs). The aim is to design a system that maximizes solar panel
efficiency without relying on expensive hardware or complex control algorithms, making
it suitable for academic use, hobbyists, and small-scale energy setups.

1.3 Objectives of the Project

 Increase solar panel efficiency by maintaining optimal alignment with the sun
throughout the day.

 Design a low-cost, Arduino-based single-axis tracking system.

 Use LDR sensors to detect sunlight intensity from two directions.

 Control a servo motor to rotate the panel based on sensor input.

 Transmit real-time servo angle via Bluetooth (HC-06 module).

 Simulate the system using Proteus before practical implementation.

 Build and test a working prototype using affordable components.

1.4 Scope and Limitations

Scope of the Project

Design and implementation of a single-axis solar tracking system to follow the sun's horizontal
movement (east to west).

6 | Page Abdulrahman Alshawesh


Solar Tracking system

Utilization of an Arduino Uno, two LDR sensors, and a servo motor (SG90) for directional adjustment.

Integration of a Bluetooth module (HC-06) to transmit real-time tracking data (servo angle).

Development and testing of the system in both simulation (Proteus) and practical prototype on a
breadboard.

Focused on low-cost, small-scale deployment suitable for educational or experimental purposes.

Limitations of the Project

Tracking is limited to one axis, which does not account for seasonal sun altitude changes (no vertical
movement).

The servo motor’s torque capacity restricts the size and weight of the solar panel that can be used.

Light sensor readings may be affected by shadows, reflections, or inconsistent ambient lighting.

The project does not include a power storage system or energy harvesting performance evaluation.

Bluetooth communication is used for monitoring only, not for remote control or configuration.

7 | Page Abdulrahman Alshawesh


Solar Tracking system

CHAPTER TWO:
OVERVIEW OF SIMULATION

8 | Page Abdulrahman Alshawesh


Solar Tracking system

2.1 System Architecture Overview

The solar tracking system designed in this project is based on a simple yet effective control mechanism
that adjusts the orientation of a solar panel according to the sun's position throughout the day. The
system is composed of four major functional blocks: light sensing, processing, actuation, and
communication.

The light sensing block uses two Light Dependent Resistors (LDRs) positioned at an angle on both
sides of the solar panel to detect the direction of maximum sunlight. These sensors generate analog
voltage signals proportional to the light intensity falling on them.

The analog signals from the LDRs are fed into an Arduino Uno microcontroller, which forms the
processing block. The Arduino continuously reads the two analog inputs and calculates the difference
in light intensity. Based on the result, it decides whether to rotate the panel to the left or right.

The decision is executed by the actuation block, which consists of a single SG90 servo motor. The
Arduino adjusts the angle of the servo to rotate the panel accordingly, keeping it aligned with the sun's
direction. A constraint is applied to keep the angle within the range of 0° to 180° to avoid mechanical
limits.

The system also includes a Bluetooth communication block using the HC-06 module. Every 0.5
seconds, the Arduino sends the current servo angle via Bluetooth, which can be received by a mobile
phone or computer for monitoring purposes.

This architecture provides a low-cost and responsive solution to solar tracking, capable of improving
energy collection efficiency in small-scale or educational setups.

2.2 Simulation Using Proteus


Before proceeding with the physical implementation, the solar tracking system was simulated using
Proteus Design Suite, a widely used tool for testing embedded systems and electronic circuits in a virtual
environment. The simulation helped validate the core logic of the tracking system, verify sensor
behavior, and ensure correct operation of the servo motor under controlled conditions.

9 | Page Abdulrahman Alshawesh


Solar Tracking system

Simulation Objectives
Test the functionality of the LDR sensors in detecting different light levels.
Simulate the Arduino code logic for comparing LDR values and controlling servo rotation.
Ensure the servo responds accurately to changes in light intensity.
Monitor real-time behavior of the tracking mechanism without hardware.
Simulation Setup
The Proteus environment was configured to include the following components:
 Arduino Uno microcontroller
 Two LDR sensors, simulated using variable resistors
 SG90 Servo motor
 Virtual terminal to simulate Bluetooth output or serial monitoring
The LDRs were placed on both sides of a virtual solar panel, and their resistance values were varied
manually to simulate changing light conditions. The Arduino code used in the simulation was the same
as the code prepared for the real hardware prototype.

Figure 2.2: Proteus simulation schematic of the solar tracking system

10 | P a g e Abdulrahman Alshawesh
Solar Tracking system

Simulation Behavior
As the simulated "light" increased on one LDR while decreasing on the other, the Arduino correctly
interpreted the change and moved the servo in the corresponding direction. This verified that the
decision-making logic and the response mechanism were functioning as intended.
Overall, the Proteus simulation provided a valuable testing environment for refining the tracking
algorithm before committing to physical hardware. It reduced the risk of errors during prototyping and
ensured that the system would behave as expected under real-world lighting conditions.

2.3 Practical Circuit Implementation

Following successful simulation, the solar tracking system was physically assembled on a breadboard
to validate its real-world performance. The prototype used standard, low-cost electronic components and
was powered using a 5V DC supply, suitable for Arduino and servo operation.

Hardware Assembly

The physical implementation included the following major components:

 Arduino Uno as the control unit.


 Two Light Dependent Resistors (LDRs) positioned on either side of the solar panel mockup.
 10kΩ resistors configured as voltage dividers with each LDR.
 SG90 Servo Motor mounted on a rotating base to simulate panel movement.
 Bluetooth module (HC-06) for transmitting servo position data to a phone or computer.
 Breadboard, jumper wires, and optional potentiometer for fine-tuning the sensitivity threshold.

11 | P a g e Abdulrahman Alshawesh
Solar Tracking system

Figure 2.3: Assembled prototype of the solar tracking system on a breadboard

Wiring Overview

1. LDR1 and LDR2 were connected to analog pins A0 and A1.


2. The servo motor was connected to digital pin 11 with a dedicated power supply line to ensure stable
operation.
3. The HC-06 module used pins 2 (RX) and 3 (TX) via SoftwareSerial to avoid interference with the
Arduino's main serial interface.
4. A common ground was maintained across all modules to ensure consistent voltage references.

12 | P a g e Abdulrahman Alshawesh
Solar Tracking system

CHAPTER THREE:
Arduino Code discussion

13 | P a g e Abdulrahman Alshawesh
Solar Tracking system

3.1 Control Logic Flowchart

The operation of the solar tracking system is governed by a loop-based control algorithm implemented
on the Arduino microcontroller. The program continuously reads light values from two LDR sensors,
compares them, and adjusts a servo motor to orient the panel toward the stronger light source.
Additionally, it sends the current servo angle over Bluetooth at regular intervals.

This logic is illustrated in the flowchart below.

14 | P a g e Abdulrahman Alshawesh
Solar Tracking system

Figure 3.1: Flowchart showing the main logic of the Arduino control code for the solar tracking system

15 | P a g e Abdulrahman Alshawesh
Solar Tracking system

The program begins with a standard initialization phase. It sets up serial communication for debugging
and establishes a Bluetooth connection using the SoftwareSerial library. The servo is also attached to a
specific pin and set to a starting angle of 90°, positioning the panel at the midpoint of its rotation range.

Upon entering the main loop, the Arduino continuously reads the analog values from two Light
Dependent Resistors (LDR1 and LDR2) connected to analog pins A0 and A1. These sensors provide
real-time data on light intensity falling on each side of the panel.

The program calculates the absolute difference between the two sensor values. If this difference exceeds
a predefined threshold (set to 10), the system determines that a significant imbalance in light exists,
indicating that the panel needs to be reoriented.

If movement is required, the program checks which LDR is receiving more light: If LDR1 > LDR2, the
panel rotates left by decreasing the servo angle. If LDR2 > LDR1, it rotates right by increasing the
angle. To prevent invalid values, the new angle is constrained within the 0° to 180° range using the
constrain() function. The servo is then updated with the new angle to physically move the panel.

The system uses the millis() function to check if 500 milliseconds have passed since the last update. If
so, it sends the current servo angle over Bluetooth via the HC-06 module and prints the same value to
the serial monitor for debugging and monitoring purposes.

After each loop cycle, the system returns to the beginning of the loop. A small delay is introduced (10
ms) to stabilize the readings and ensure smooth servo operation. This continuous loop allows the panel
to track the sun in real time throughout the day.

· 3.2 Program Logic and Functional Structure

The Arduino program controls the solar tracking system by reading light intensity values from two LDR
sensors, adjusting a servo motor accordingly, and transmitting the current servo angle over Bluetooth.
Below is a detailed breakdown of the code’s structure and key operations:

1. Library Inclusions and Setup:


These lines include two essential libraries:

#include <Servo.h>

#include <SoftwareSerial.h>

16 | P a g e Abdulrahman Alshawesh
Solar Tracking system

2. Pin Definitions and Bluetooth Object:


Defines pin numbers for LDRs, the servo motor, and Bluetooth serial communication.

#define LDR1 A0

#define LDR2 A1

#define SERVO_PIN 11

SoftwareSerial BTSerial(2, 3); // RX, TX

3. Constants and Variables:


Declares constants for threshold comparison, servo starting position, update interval, and required
variables.

const int ERROR_THRESHOLD = 10;

int Spoint = 90;

const unsigned long interval = 500;

Servo servo;

unsigned long previousMillis = 0;

4. setup() Function: Initialization


Initializes serial and Bluetooth communication, attaches and centers the servo, and outputs a message to
the Serial Monitor.

void setup() {

Serial.begin(9600);

BTSerial.begin(9600);

servo.attach(SERVO_PIN);

servo.write(Spoint);

delay(1000);

Serial.println("Solar Tracking System: Now sending servo angle via Bluetooth.");

17 | P a g e Abdulrahman Alshawesh
Solar Tracking system

5. loop() Function: Sensor Reading and Decision Logic


Reads LDR sensor values and calculates their difference.

void loop() {

int ldr1 = analogRead(LDR1);

int ldr2 = analogRead(LDR2);

int difference = abs(ldr1 - ldr2);

6. Decision Making: When and How to Move


If the light difference exceeds the threshold, the servo moves toward the brighter LDR.

if (difference > ERROR_THRESHOLD) {

if (ldr1 > ldr2) {

Spoint = Spoint - 1;

} else if (ldr1 < ldr2) {

Spoint = Spoint + 1;

7. Servo Range Limiting and Update


Constrains the servo angle to remain within a valid range and applies the new angle.

Spoint = constrain(Spoint, 0, 180);

servo.write(Spoint);

8. Periodic Bluetooth Transmission


Checks timing and sends the servo angle via Bluetooth and the serial monitor every 0.5s.

unsigned long currentMillis = millis();

if (currentMillis - previousMillis >= interval) {

previousMillis = currentMillis;

BTSerial.print("Servo Angle: ");

BTSerial.println(Spoint);

Serial.print("Sent via BT -> Servo Angle: ");

18 | P a g e Abdulrahman Alshawesh
Solar Tracking system

Serial.println(Spoint);

9. Final Stabilization Delay


Delays the next loop cycle slightly to stabilize readings.

delay(10);

19 | P a g e Abdulrahman Alshawesh
Solar Tracking system

CHAPTER FOUR:
Applications and conclusions

20 | P a g e Abdulrahman Alshawesh
Solar Tracking system

4.1 Applications of The solar tracking system


The solar tracking system designed and implemented in this project stands as a promising and practical
example of applying embedded systems for improving renewable energy efficiency. At its core, the
system is built upon an Arduino microcontroller that processes sensor data to control a servo motor. This
setup allows the solar panel to dynamically follow the sun’s position during the day, maximizing light
absorption and overall energy output.

The significance of real-time solar tracking lies in its measurable benefits over fixed-position solar
panels. By maintaining optimal orientation toward sunlight, the system can achieve 20% to 40% greater
energy efficiency than conventional stationary panels. This enhanced efficiency opens a wide array of
applications across different sectors, making the system valuable for rural, urban, educational, and
commercial use.

In agriculture, where electrical infrastructure may be limited or absent, solar tracking can power
automated irrigation systems. Panels equipped with sun-tracking capabilities ensure steady power
availability, especially in remote farming locations. Farmers can benefit from energy autonomy and
reliable water supply without relying on grid electricity or diesel-powered generators. In regions with
significant sunshine duration, this approach contributes to both environmental sustainability and
operational cost reduction.

Urban households and smart homes also stand to benefit significantly from solar tracking systems. As
the push toward smart living continues, solar-powered home systems are increasingly common. A
tracking system installed on rooftops or balconies can provide power for lighting, small appliances,
heating systems, and battery storage. Such installations help homeowners reduce energy bills, promote
green living, and achieve greater energy independence.

In the field of education and research, the Arduino-based solar tracker serves as an excellent learning
platform. It provides students and researchers a practical opportunity to explore concepts such as sensor
calibration, real-time control, and efficient power management. Moreover, this system is adaptable and
scalable, allowing for integration into more advanced research involving IoT, AI-based prediction
models, and self-learning algorithms for solar tracking optimization.

From a commercial standpoint, solar tracking systems can transform solar energy harvesting in larger-
scale environments. Utility-scale solar farms often operate with fixed-tilt arrays, which are easier to
install but less efficient in terms of daily energy capture. Incorporating tracking mechanisms into such
systems can significantly improve performance metrics and financial returns. The additional energy
harvested throughout the day translates directly into better grid contributions and enhanced sustainability
metrics.

Another important application area is disaster relief and remote medical facilities. In off-grid emergency

21 | P a g e Abdulrahman Alshawesh
Solar Tracking system

zones or mobile clinics where power sources are limited, solar trackers can ensure consistent energy for
life-saving equipment, communication systems, and refrigeration. The flexibility, portability, and
programmability of Arduino-based designs make them particularly suitable for such critical and time-
sensitive operations.

Finally, solar trackers are suitable for public infrastructure applications, such as powering traffic signals,
street lighting, and surveillance systems in energy-constrained environments. These use cases align with
global efforts to build more sustainable, efficient, and resilient cities.

4.2 Conclusions
The implemented solar tracking system utilizing Arduino has proven to be an effective method for
enhancing photovoltaic energy efficiency. Unlike fixed solar panels, this system maintains optimal
alignment with the sun throughout the day, potentially increasing energy output by 20% to 40%. This
improvement makes solar tracking valuable across multiple sectors. In agriculture, it supports
autonomous irrigation systems in remote areas. In urban settings, small-scale trackers can power smart
home devices, lighting, and heating systems more efficiently. Educationally, the project offers a
practical learning platform for students to explore electronics, programming, and sustainable
technologies, while enabling further exploration into intelligent tracking systems through machine
learning or predictive control. On a commercial scale, integrating tracking systems into large solar farms
can significantly improve grid independence and return on investment. Overall, this project
demonstrates the viability of cost-effective, programmable solar tracking as a scalable solution for
optimizing solar energy usage across diverse environments and use cases.

22 | P a g e Abdulrahman Alshawesh
Solar Tracking system

CHAPTER Five:
Recommendations and future work
References and appendix

23 | P a g e Abdulrahman Alshawesh
Solar Tracking system

5.1 Recommendations
The current implementation of the solar tracking system presents strong evidence of efficiency
improvement in solar power capture. However, to ensure broader applicability, scalability, and enhanced
performance, several enhancements are recommended.

1. Upgrade to Dual-Axis Tracking : Moving from a single-axis to a dual-axis system can significantly
improve sunlight capture by tracking both azimuth and elevation angles.

2. Integration of Environmental Sensors : Adding sensors for temperature, humidity, and ambient light
can enable smarter energy management, allowing the system to adapt dynamically to environmental
changes.

3. Wireless Communication : Introducing Bluetooth or Wi-Fi modules will enable remote monitoring
and control, beneficial in industrial or large-scale solar farm settings.

4. Performance Logging and Analytics : Incorporating data logging helps track long-term performance,
supports diagnostics, and lays the groundwork for predictive analytics.

5. Hardware Improvements : Utilizing stepper motors and integrating limit switches or encoders will
enhance precision and system longevity.

6. Microcontroller Upgrade : Transitioning to a more powerful controller like ESP32 or Raspberry Pi


Pico allows for complex operations such as edge computing and real-time processing.

5.2 Future Work


To further extend the usefulness of the system and adapt it for a wide range of applications, several areas
of future work can be pursued:

1. Machine Learning Integration : Implementing predictive models can enable the system to anticipate
sun positions and optimize tracking more intelligently, reducing actuator workload.

2. Two-Axis Prototyping : A prototype involving both horizontal and vertical tracking should be
developed and tested for optimal solar gain.

3. Educational Toolkit Development : The system can be turned into an open-source learning platform
with documentation, simulation tools, and guided experiments for students.

4. Disaster and Off-Grid Applications : Expanding the design for mobile or emergency energy use can
make it valuable for field hospitals or disaster recovery areas.

24 | P a g e Abdulrahman Alshawesh
Solar Tracking system

5. Public Infrastructure Deployment : Implementing solar trackers in public lighting, road signs, or
surveillance systems can improve sustainability in urban planning.

These steps aim to make the system more intelligent, autonomous, and versatile, aligning with global
trends in green technology and smart infrastructure development.

5.3 References
1. S. Mekhilef, R. Saidur, and A. Safari, “A review on solar energy use in industries,” Renewable and
Sustainable Energy Reviews, vol. 15, no. 4, pp. 1777–1790, 2011.

2. T. Esram and P. L. Chapman, “Comparison of photovoltaic array maximum power point tracking
techniques,” IEEE Transactions on Energy Conversion, vol. 22, no. 2, pp. 439–449, 2007.

3. N. A. Ahmed and M. Miyatake, “A novel maximum power point tracking for photovoltaic
applications under partially shaded insolation conditions,” Electric Power Systems Research, vol. 78, no.
5, pp. 777–784, 2008.

4. D. Sera, T. Kerekes, R. Teodorescu, and F. Blaabjerg, “Improved MPPT method for rapidly changing
environmental conditions,” IEEE International Symposium on Industrial Electronics, 2006.

5. M. A. Green, “Photovoltaics: Technology overview,” Energy Policy, vol. 28, no. 14, pp. 989–998,
2000.

6. A. Luque and S. Hegedus, Handbook of Photovoltaic Science and Engineering. John Wiley & Sons,
2011.

7. P. K. Sharma and A. Choudhury, “Design and Development of Arduino Based Solar Tracker,”
International Journal of Scientific & Engineering Research, vol. 9, no. 4, pp. 123–128, 2018.

8. H. Patel and V. Agarwal, “MATLAB-Based Modeling to Study the Effects of Partial Shading on PV
Array Characteristics,” IEEE Transactions on Energy Conversion, vol. 23, no. 1, pp. 302–310, 2008.

9. R. F. Service, “Solar energy. Is it time to shoot for the sun?,” Science, vol. 309, no. 5734, pp. 548–
551, 2005.

10. Arduino.cc, 'Arduino Documentation', https://www.arduino.cc/en/Guide, accessed July 2025.

11. A. M. Eltamaly, M. A. Mohamed, and A. I. Alolah, “Fuzzy logic power tracking for photovoltaic
applications,” International Journal of Electrical Power & Energy Systems, vol. 43, no. 1, pp. 546–553,
2012.

12. A. K. Pandey, N. Mitra, and A. K. Tripathi, “Solar tracking: Current status, challenges and future
directions,” Renewable and Sustainable Energy Reviews, vol. 90, pp. 590–603, 2018.

25 | P a g e Abdulrahman Alshawesh
Solar Tracking system

5.4 Appendix
 Arduino UNO

The Arduino Uno is a widely used microcontroller board based on the ATmega328P chip. It offers 14
digital I/O pins (6 of which support PWM), 6 analog inputs, and operates at 5V with a 16 MHz clock
speed. Its simplicity and reliability make it ideal for electronics and automation projects.

The board can be programmed via USB using the Arduino IDE, which supports easy C/C++ coding. It
has 32 KB flash memory, 2 KB SRAM, and 1 KB EEPROM, suitable for small to medium-sized
applications.

In this project, the Arduino Uno controls the servo motor, reads sensor data from LDRs, and handles
Bluetooth communication, making it a central component in the solar tracking system.

26 | P a g e Abdulrahman Alshawesh
Solar Tracking system

 SG90 Servo Motor


The SG90 is a compact, lightweight servo motor commonly used in robotics, automation, and DIY
electronics projects. It operates on 5V and provides precise angular control over a range of
approximately 0° to 180°.

This servo uses a PWM (Pulse Width Modulation) signal to set the desired angle, making it ideal for
applications like steering mechanisms, robotic arms, and solar tracking systems. It features plastic gears,
which offer a good balance between speed and torque for lightweight applications.

In this project, the SG90 servo motor is responsible for rotating the solar panel toward the direction of
maximum sunlight based on LDR sensor readings, enabling efficient solar tracking.

27 | P a g e Abdulrahman Alshawesh
Solar Tracking system

 HC-06 module

The HC-06 is a low-cost Bluetooth module designed for wireless serial communication. It operates
over the Bluetooth 2.0 protocol and supports communication at a default baud rate of 9600 bps. The
module is configured as a slave device, which means it can receive commands from a master like a
smartphone or computer but cannot initiate connections.

The HC-06 uses UART (TX/RX) serial pins for communication with microcontrollers like the Arduino.
It operates at 3.3V logic level but is powered using 5V, making it compatible with most Arduino boards.

In this project, the HC-06 module transmits real-time servo angle data from the Arduino to an external
Bluetooth-enabled device, providing wireless monitoring of the solar panel’s position.

28 | P a g e Abdulrahman Alshawesh
Solar Tracking system

 LDR (Light Dependent Resistor)

An LDR, or Light Dependent Resistor, is a type of photoresistor that changes its resistance based on
the amount of light falling on it. In bright light, its resistance decreases, while in darkness, the resistance
increases.

LDRs are commonly used in light-sensing applications such as automatic lighting, alarm systems, and
solar trackers. They are analog sensors that provide a voltage reading proportional to the light intensity
when connected in a voltage divider circuit.

In this project, two LDRs are used to detect sunlight intensity from different directions. The Arduino
compares their readings to determine where the sun is more intense and then adjusts the servo motor
position accordingly, enabling accurate solar tracking.

29 | P a g e Abdulrahman Alshawesh
Solar Tracking system

 Breadboard
A breadboard, solderless breadboard, or protoboard is a construction base used to build semi-
permanent prototypes of electronic circuits. Unlike a perfboard or stripboard, breadboards do
not require soldering or destruction of tracks and are hence reusable. For this reason,
breadboards are also popular with students and in technological education.

A variety of electronic systems may be prototyped by using breadboards, from small analog
and digital circuits to complete central processing units (CPUs).

Compared to more permanent circuit connection methods, modern breadboards have high
parasitic capacitance, relatively high resistance, and less reliable connections, which are
subject to jostle and physical degradation. Signaling is limited to about 10 MHz, and not
everything works properly even well below that frequency.

Top and bottom view of 400-holes breadboard, showing the connections between holes

30 | P a g e Abdulrahman Alshawesh

You might also like