Phone : +8801894-801150 Email : projects.zeronebd@gmail.com
support 24/7

#EHD109 360 Degree Smart Power Monitoring of Home Appliance and Automatic Protection System.

The Dual Axis Sun Position Tracking System is designed to enhance the efficiency of solar energy collection by continuously adjusting the orientation of a solar panel to follow the sun’s movement across the sky.

Project Fee:Negotiable

Project Discount:0

Project Duration:7 Days

The Dual Axis Sun Position Tracking System operates by using two axes of movement—horizontal (azimuth) and vertical (elevation)—to keep the solar panel aligned with the sun throughout the day and across seasons. Light-dependent resistors (LDRs) or position sensors detect the sun’s position in real-time. A microcontroller processes this data and sends control signals to servo motors or actuators, which adjust the panel’s angle accordingly. This ensures the solar panel maintains an optimal angle to receive maximum sunlight from sunrise to sunset, significantly increasing the solar energy harvested compared to fixed-panel systems.

Components Required:

  • Arduino Uno

  • 2 Servo motors (for X and Y axes)

  • 4 LDRs

  • 4 10kΩ resistors

  • Breadboard and jumper wires

  • Solar panel (optional for demo)

Advantages:

  • Increased Efficiency: Improves energy generation by up to 40% compared to fixed panels.

  • Full-Day Tracking: Follows the sun throughout the day and adjusts for seasonal changes.

  • Smart Operation: Automatically adjusts without manual input using sensors and a microcontroller.

  • Better ROI: Faster return on investment due to higher energy output.

  • Adaptability: Can be implemented in both small-scale and large-scale solar installations.

  • Energy Optimization: Ideal for locations with changing sun paths due to terrain or seasons.


🔰 ইঞ্জিনিয়ারিং ফাইনাল ইয়ার প্রজেক্টস এবং স্কুল-কলেজের ছাত্র ছাত্রীদের বিজ্ঞান মেলায় প্রতিযোগিতা করার জন্য, পছন্দের তালিকায় রাখতে পারেন আমাদের নিজিস্ব ডিজাইনের তৈরি এই ডেমো প্রজেক্ট গুলো। আমাদের রয়েছে সফলতার সাথে ১০০০+ প্রজেক্ট সম্পন্ন করার অভিজ্ঞতা।


🔰 আপনার প্রজেক্টের আইডিয়া, সম্পূর্ণ প্রজেক্ট, প্রজেক্ট পেপার, পাওয়ার পয়েন্ট প্রেজেন্টেশন এবং আপনার প্রজেক্ট ভাইবা পর্যন্ত সকল ধরণের কারেকশন, সহযোগিতা করার জন্য আমাদের টিম আছে আপনার সাথে।


🔰 প্রতিনিয়ত আমরা আপনাদের জন্য বেস্ট সার্ভিস আর আপনাদের চাহিদা অনুযায়ী প্রজেক্ট তৈরি করে আপনাদের হাতে পৌঁছে দেওয়ার জন্য করে যাচ্ছি অক্লান্ত পরিশ্রম। আপনাদের রেসপন্সে আমরা অভিভূত।


𝐂𝐨𝐧𝐭𝐚𝐜𝐭 𝐃𝐞𝐭𝐚𝐢𝐥𝐬:

📞 01894-801150, 01886-180101

📧Email: projects.zeronebd@gmail.com

🌐Web: https://www.projects.zeronebd.com

YouTube Channel: https://www.youtube.com/c/ZerOneProjects

Instagram: www.instagram.com/zerone_projects_bd


🏠অফিস:

প্লট-০৩, রোড -০৪, সেকশন ৬/ক

মিরপুর-২ (মিরপুর শের-ই-বাংলা স্টেডিয়ামের ৪নং গেটের বিপরীতে),

ঢাকা-১২১৬

CODE

#include 

// Define Servos
Servo servoX;  // Horizontal movement
Servo servoY;  // Vertical movement

// LDR Pins
int ldrTL = A0;  // Top Left
int ldrTR = A1;  // Top Right
int ldrBL = A2;  // Bottom Left
int ldrBR = A3;  // Bottom Right

// Servo positions
int posX = 90;
int posY = 90;

void setup() {
  servoX.attach(9);   // Connect servoX to pin 9
  servoY.attach(10);  // Connect servoY to pin 10
  servoX.write(posX);
  servoY.write(posY);
  delay(1000);        // Wait for initial positioning
}

void loop() {
  // Read LDR values
  int TL = analogRead(ldrTL);
  int TR = analogRead(ldrTR);
  int BL = analogRead(ldrBL);
  int BR = analogRead(ldrBR);

  // Calculate average values
  int topAvg = (TL + TR) / 2;
  int bottomAvg = (BL + BR) / 2;
  int leftAvg = (TL + BL) / 2;
  int rightAvg = (TR + BR) / 2;

  // Sensitivity threshold
  int tolerance = 50;

  // Vertical adjustment (Y-axis)
  if (abs(topAvg - bottomAvg) > tolerance) {
    if (topAvg > bottomAvg && posY < 180) posY++;
    else if (topAvg < bottomAvg && posY > 0) posY--;
    servoY.write(posY);
  }

  // Horizontal adjustment (X-axis)
  if (abs(leftAvg - rightAvg) > tolerance) {
    if (leftAvg > rightAvg && posX < 180) posX++;
    else if (leftAvg < rightAvg && posX > 0) posX--;
    servoX.write(posX);
  }

  delay(100);  // Small delay for stability
}