Project: Dual-Axis Solar Tracker with Real-Time Data Monitoring and Mobile Control

Hello everyone, I’m working on a dual-axis solar tracker project to maximize solar energy efficiency, and I’d like to share my setup and plans. The system uses light-dependent resistors (LDRs) to track the sun’s position and adjust a solar panel via servo motors. Additionally, real-time voltage and current from the solar panel will be logged and displayed on a mobile app using a Bluetooth connection. Here’s a breakdown of the project:


Parts List

  1. Arduino Uno R4 WiFi (14-bit ADC):
  • Handles servo control and data processing.
  • Reads analog inputs from sensors (LDRs, current, and voltage).
  1. Parallax Standard Servos (x2):
  • Horizontal Servo: Rotates the panel left/right (azimuth adjustment).
  • Vertical Servo: Tilts the panel up/down (elevation adjustment).
  1. Seeed Studio Serial Bluetooth v3.0 Module:
  • Enables real-time data monitoring and mobile control.
  • RXD pin uses a voltage divider (1kΩ/2kΩ) to ensure it doesn’t exceed 3.3V.
  1. INA250A4 Current and Voltage Sensor:
  • Measures solar panel current with a gain of 2V/A.
  • Internal shunt resistor ensures precise current measurement.
  • Outputs current signal to A4 on Arduino.
  1. Voltage Divider (for Voltage Measurement):
  • 500Ω and 5kΩ resistors in parallel with a 60Ω load resistor serve as both the load and a divider.
  • Outputs scaled voltage to A5 on Arduino.
  1. 4 GL5528 LDRs (10kΩ pull-down resistors):
  • Detect sunlight intensity for azimuth and elevation tracking.
  • Arranged in a quadrant to identify the sun’s position.
  1. LM358N Operational Amplifier:
  • Amplifies the INA250A4 output to maximize the ADC resolution for accurate current readings.
  1. 6V 4000mAh Rechargeable Battery:
  • Powers the servos and system components.
  • Recharged via a Maypole Smart Charger with automatic cutoff.
  1. Solar Panel (5.5V, 0.5W):
  • Used to test system performance and efficiency.
  • Connected through INA250A4 for current measurement and a voltage divider for voltage readings.
  1. Custom LDR Holder (3D Printed):
  • Houses the LDRs in a cross pattern for optimal sunlight detection.
  1. Breadboard and Miscellaneous Wiring:
  • For prototyping all connections and components.

Wiring Overview

  • Solar Panel:
    • Positive terminal connects to IN+ on the INA250A4.
    • Negative terminal connects to a combined load (60Ω in parallel with 500Ω and 5kΩ resistors) and then to IN- on the INA250A4.
  • Voltage Divider:
    • Outputs scaled-down voltage (max 5V) to A5 on Arduino.
  • INA250A4:
    • OUT pin outputs scaled current signal to A4 on Arduino.
    • Powered by Arduino’s 5V and GND pins.
  • Bluetooth Module:
    • TX and RX connected to Arduino serial pins for communication.
    • RXD pin protected by a 1kΩ and 2kΩ voltage divider.
  • Servos:
    • Signal pins connected to Arduino PWM pins for position control.
    • Powered by the 6V battery.

Features

  • Automatic Dual-Axis Tracking:
    • LDRs detect sunlight intensity, and servos adjust the panel to maximize energy absorption.
  • Real-Time Voltage and Current Monitoring:
    • INA250A4 provides current data, and the voltage divider scales solar panel voltage for safe input.
  • Mobile App Integration:
    • View real-time solar panel data via Bluetooth.
    • Send manual commands to adjust panel position or switch to a stationary mode.
  • Energy Optimization:
    • 60Ω resistor (with parallel divider) matches the solar panel’s maximum power point (~91mA at 5.5V).

Questions/Feedback

  1. Is my wiring diagram optimal for long-term operation and accurate measurements?
  2. Are there better methods for LDR tracking, or should I consider GPS for future iterations?
  3. Any advice to further improve power efficiency or reduce hardware complexity?

Looking forward to hearing your thoughts and feedback!

Hello isaacp02

Use a local clock to track the sun, simply.

Won't your servos consume more power than you will save by moving the solar panel?

Any Arduino, a clock and your geographic location (plus the steering hardware) is all you need for sun tracking.

Hey Paul,

Yes that is a good point although this project is more to explore how much more power we get from a dual axis solar panel compared to a fixed solar panel and to see if the extra cost is worth it.

This is more of a proof of concept and that if we were to design a real system for practical use it would be worth powering servos.

That can be done analytically. No need to build anything.

Hey Dave,

This is for a final year project for mechatronics engineering. They expect you to have something built so that why I am building it for real. should have specified that. Thanks!

1 Like

Yes! Be sure you can measure in watt-hours produced and watt-hours expended.

That has been done many times, of course. I vaguely recall published figures to be in the vicinity of 25% power increment.

And the general conclusion that it usually makes more financial sense to just take the money that would be spent on the tracking mechanism, different support structure, maintenance, etc. and buy a few more fixed panels.

Hey jremington,

Thank you for the input, luckily the new arduino uno rev 4 comes with built in RTC so I am going to try that once I get the tracker working with LDRs. Thanks for the link! definitely will be visiting often. The other materials are purely just so i can measure the power output and graph them in excel.

Hey Paul,

Luckily the new uno rev 4 has a built in RTC so once I get the tracker working with LDRs I might try and switch over to RTC and GPS tracking. Also the LDRs are nice just so when I present to people I can demonstrate using my phone.

Yeah you make a fair point. I believe this project is more just to contribute to the world of research, and I thought solar tracking was a pretty cool idea with the world turning to renewables and solar being one of the larger sectors.

At the end of the day I just want to make something I am proud of and that will get me my bachelors!

Appreciate the feedback!

I believe I would be able to do this with the RTC that is built into the uno rev 4?

I believe single axis was 25% and dual was 40 but I could be mistaken. I am going to try and add Bluetooth to check readings via an app and maybe implement control via the app. We are not given much in terms of budget and time with a full course load so I thought I would choose something cool that is somewhat doable with what we got and demonstrates the skills ive leaned in school.

Do we see feature creep in action?

Yes I definitely think I am getting ahead of myself, Once I order everything I am going to integrate everything one step at a time so that if I don't finish, I still have a functional project without all the features I wanted. First thing to focus on is getting the Dual axis tracking working with either the RTC or LDRs.

Reports are that it keeps such poor time as to be almost unusable. The DS3231 is accurate to 1-2 minutes/year.

30%, so the improvement, at significant cost, is negligible. See this site: Tracking Solar Panels vs. Fixed Solar Panels - Solar Panels Network USA

Ah good catch! now that I am reading about it online, reviews do not seem to be great. I found the DS3231M on the website we need to buy from.

Looks like it has the right specs like I2C and high accuracy.