ساخت دنبال کننده خورشید با آردوینو و با کمترین هزینه
نویسنده:
امتیاز دهید

ساخت دنبال کننده خورشید با آردوینو و با کمترین هزینه

در سیستم‌های دنبال کننده خورشید مدرن, پنل‌های خورشیدی روی سازه‌ای که بر اساس موقعیت خورشید حرکت می‌کند ثابت می‌شوند. در این آموزش طراحی یک دنبال کننده خورشید با استفاده از دو سروو موتور, چهار سنسور فتوسل و برد آردوینو Uno ارائه می‌شود.

شماتیک مداری:

سیستم دنبال کننده خورشید مدار ساده‌ای دارد که در زیر نمایش داده شده است ولی باید ساخت این مدار با دقت بیشتر انجام شود.

چهار فتوسل مدنظر برای سیستم به همراه چهار مقاومت 100 کیلو اهم به صورت مد تقسیم ولتاژ طراحی می‌شوند و خروجی آنها به چهار پایه آنالوگ برد آردوینو وصل می‌شود. ورودی پالس PWM هر یک از سروو موتورهای سیستم هم توسط پایه‌های 9 و 10 آردوینو تأمین می‌شوند.

قطعات موردنیاز پنل خورشیدی متحرک :

  • فتوسل 1K 5mm
  • 4 عدد
  • مقاومت 100 کیلو اهم
  • 4 عدد
  • سیم لحیم قلع-سرب 100 گرمی
  • 1 عدد
  • پنل خورشیدی
  • 1 عدد
  • ورق فلزی
  • 1 عدد
  • سیم مناسب
  • 0.5 متر

عملکرد سیستم:

سنسورهای فتوسل به عنوان سنسور نور در این سیستم به کار رفته است. دو موتور سروو نیز به سازه‌ی نگه‌دارنده پنل خورشیدی ثابت شده‌اند. سنسورهای فتوسل مقدار نوری که بر روی آنها تابش می‌کند را حس می‌کنند. این چهار سنسور فتوسل در بالا, پایین, چپ و راست پنل خورشیدی قرارگرفته می‌شود.

برای حرکت چپ-راست, مقدار آنالوگ دو فتوسل بالا و پایین پنل خورشیدی با یکدیگر مقایسه می‌شوند و هرکدام که مقدار نور بیشتری جذب کند, موتور محور عمودی به آن سمت حرکت می‌کند. برای حرکت چرخشی هم, مقادیر آنالوگ فتوسل‌های سمت چپ و راست پنل خورشیدی با یکدیگر مقایسه شده و هر سمتی که نور بیشتری را جذب کند موتور پایین سیستم که به زمین متصل شده به آن سمت حرکت خواهد کرد.

نصب سازه:

گام اول:

یک مقوا برداشته و مطابق شکل در وسط آن یک سوراخ بزرگ ایجاد کرده و پنل خورشیدی را بر روی آن چسبانده و دو سیم آنرا از سوراخ ایجادشده بر روی مقوا خارج کنید. سپس, در هر گوشه از پنل هم یک سوراخ به اندازه‌ای که هر فتوسل در آن ثابت شود ایجاد کنید.

گام دوم:

هر یک از فتوسل‌ها در جای خودش قرار داده با چسب کاملاً محکم می‌چسبانیم. سپس, مطابق شکل ورق فلزی را خم کرده و در پشت مقوا قرار داده و سیم‌های پنل خورشیدی را برای راحتی در چرخش سیستم از داخل سوراخ‌های ورق فلزی عبور می‌دهیم.

گام سوم:

طبق شکل زیر, یک پایه از هر چهار فتوسل را به مقاومت 100 کیلو اهم لحیم کرده و درنهایت هر چهار پایه از فتوسل‌ها را با یک سیم به هم متصل می‌کنیم. در این لحیم کاری می‌توان از شماتیک مداری سیستم استفاده کنیم تا مد تقسیم ولتاژ را ایجاد کنیم.

گام چهارم:

حال یک سیم چهارتایی را بر روی ورق فلزی در محل مناسب گذاشته و هر سیم آنرا در هر نقطه بین پایه سنسور فتوسل و مقاومت 100 کیلو اهم متصل به آن لحیم کنید. این سیم برای اتصال خروجی هر یک از فتوسل‌ها به برد آردوینو استفاده می‌شود. از یک سیم دوتایی دیگر هم برای تأمین Vcc و GND فتوسل‌ها استفاده می‌شود. یک سیم را به انتهای مقاومت‌ها و سیم دیگر را به پایه‌های دیگر فتوسل‌ها که با سیم به یکدیگر لحیم شده است متصل کنید.

گام پنجم:

حال برای ایجاد حرکت چرخشی در سیستم, یک سروو موتور را مطابق شکل به ورق فلزی با پیچ وصل کنید. این سروو موتور به زمین ثابت خواهد شد.

گام ششم:

مطابق شکل زیر, سروو موتور بعدی را به ورق خم شده فلزی که بر روی مقوا قرار دارد بچسبانید.

گام هفتم:

درنهایت این سروو موتور گام ششم را به سازه سروو موتور دیگر چسبانده و کل سیستم دنبال کننده خورشید ساخته می‌شود.

برنامه نوشته شده برای برنامه‌ریزی بر روی مدار آردوینو به صورت زیر است:

#include <Servo.h>

//defining Servos

Servo servohori;

int servoh = 0;

int servohLimitHigh = 160;

int servohLimitLow = 20;

 

Servo servoverti;

int servov = 0;

int servovLimitHigh = 160;

int servovLimitLow = 20;

//Assigning LDRs

int ldrtopl = 2; //top left LDR green

int ldrtopr = 1; //top right LDR yellow

int ldrbotl = 3; // bottom left LDR blue

int ldrbotr = 0; // bottom right LDR orange

 

 void setup ()

 {

  servohori.attach(10);

  servohori.write(0);

  servoverti.attach(9);

  servoverti.write(0);

  delay(500);

 }

 

void loop()

{

  servoh = servohori.read();

  servov = servoverti.read();

  //capturing analog values of each LDR

  int topl = analogRead(ldrtopl);

  int topr = analogRead(ldrtopr);

  int botl = analogRead(ldrbotl);

  int botr = analogRead(ldrbotr);

  // calculating average

  int avgtop = (topl + topr) / 2; //average of top LDRs

  int avgbot = (botl + botr) / 2; //average of bottom LDRs

  int avgleft = (topl + botl) / 2; //average of left LDRs

  int avgright = (topr + botr) / 2; //average of right LDRs

 

  if (avgtop < avgbot)

  {

    servoverti.write(servov +1);

    if (servov > servovLimitHigh)

     {

      servov = servovLimitHigh;

     }

    delay(10);

  }

  else if (avgbot < avgtop)

  {

    servoverti.write(servov -1);

    if (servov < servovLimitLow)

  {

    servov = servovLimitLow;

  }

    delay(10);

  }

  else

  {

    servoverti.write(servov);

  }

 

  if (avgleft > avgright)

  {

    servohori.write(servoh +1);

    if (servoh > servohLimitHigh)

    {

    servoh = servohLimitHigh;

    }

    delay(10);

  }

  else if (avgright > avgleft)

  {

    servohori.write(servoh -1);

    if (servoh < servohLimitLow)

     {

     servoh = servohLimitLow;

     }

    delay(10);

  }

  else

  {

    servohori.write(servoh);

  }

  delay(50);

}

آموزش راه‌اندازی سروو موتور به طور کامل در "آموزش آردوینو: درس چهاردهم (سروو موتور)" آورده شده است. در این برنامه نوشته شده برای راه‌اندازی سیستم دنبال کننده خورشید, ابتدا کتابخانه سروو موتور فراخوانی شده است. سپس, دو متغیر servohori و servoverti به عنوان دو موتور سرووی افقی و عمودی برای ایجاد دو چرخش در سیستم تعریف شده و مقادیر بیشینه و کمینه برای چرخش آنها تعریف شده‌اند. در ادامه, پایه‌های هر فتوسل را برای آردوینو معرفی کرده ایم.

در بخش setup لازم است که متغیر servo را به پین مربوط به کنترل سروو موتور مرتبط کنیم.

  servo.attach(servoPin);

و مقدار اولیه هر موتور را نیز در زاویه صفر قرار می‌دهیم.

در ادامه, برنامه به صورتی نوشته شده است تا برای حرکت چپ-راست, مقدار آنالوگ دو فتوسل بالا و پایین پنل خورشیدی با یکدیگر مقایسه می‌شوند و هرکدام که مقدار نور بیشتری جذب کند, موتور محور عمودی به آن سمت حرکت می‌کند. برای حرکت چرخشی هم, مقادیر آنالوگ فتوسل‌های سمت چپ و راست پنل خورشیدی با یکدیگر مقایسه شده و هر سمتی که نور بیشتری را جذب کند موتور پایین سیستم که به زمین متصل شده به آن سمت حرکت خواهد کرد.

مطالب مرتبط

ابزار کاربردی پرینت شده برای کارگاه های خانگی پایگاه دانش

ابزار کاربردی پرینت شده برای کارگاه های خانگی

در این مقاله که در مورد یک مسابقه جهانی هست برای شما عزایزن برترین طرح های انتخاب شده را جمع کردیم تا مدل پرینت سه بعدی را بتوانید رایگان دانلود کنید.
3 هفته قبل
برش مدل‌های سه‌بعدی با گوشی، تبلت یا لپ‌تاپ: معرفی Prusa EasyPrint پایگاه دانش

برش مدل‌های سه‌بعدی با گوشی، تبلت یا لپ‌تاپ: معرفی Prusa EasyPrint

Prusa EasyPrint یک سرویس ابری جدید است که به کاربران امکان می‌دهد مدل‌های سه‌بعدی را مستقیماً از طریق مرورگر وب در گوشی، تبلت یا لپ‌تاپ برش دهند. این سرویس فرآیند چاپ را ساده‌تر و دسترس‌پذیرتر می‌کند.
4 هفته قبل
راهنمای خرید دستگاه CNC در ایران | مقایسه قیمت و ویژگی‌ها 1404 پایگاه دانش

راهنمای خرید دستگاه CNC در ایران | مقایسه قیمت و ویژگی‌ها 1404

بهترین راهنمای خرید دستگاه CNC در ایران با مقایسه قیمت، ویژگی‌ها و برندهای معتبر. نکات ساخت دستگاه CNC خانگی و انتخاب قطعات را اینجا بخوانید!
1 ماه قبل
رطوبت، دشمن پنهان فیلامنت‌: چگونه رطوبت کیفیت چاپ سه‌بعدی را کاهش می‌دهد؟ پایگاه دانش

رطوبت، دشمن پنهان فیلامنت‌: چگونه رطوبت کیفیت چاپ سه‌بعدی را کاهش می‌دهد؟

رطوبت محیط می‌تواند فیلامنت‌های پرینتر سه‌بعدی را تخریب کرده و باعث کاهش کیفیت چاپ شود. در این مقاله راهکارهای شناسایی، جلوگیری و خشک‌کردن فیلامنت را بررسی می‌کنیم.
1 ماه قبل
استپر موتور در دستگاه های cnc پایگاه دانش

استپر موتور در دستگاه های cnc

در این مقاله جامع، صفر تا صد کاربرد استپ‌موتور در ساخت دستگاه‌های CNC را می‌آموزید؛ از اصول عملکرد و انتخاب سایز تا تنظیم درایور، میکرو‌استپ و کاهش لرزش.
1 ماه قبل
مقایسه درایور استپر موتور A4988، DRV8825 و TMC2208: راهنمای جامع انتخاب پایگاه دانش

مقایسه درایور استپر موتور A4988، DRV8825 و TMC2208: راهنمای جامع انتخاب

مقایسه درایور استپر موتور A4988، DRV8825 و TMC2208: در این مقاله عملکرد، دقت میکرواستپینگ، مصرف انرژی و سطح نویز هر سه درایور را بررسی کنید و بهترین گزینه برای پروژه‌های رباتیک، پرینتر سه‌بعدی و اتوماسیون را بیابید.
2 ماه قبل
راهنمای کامل درایور استپرموتور: انتخاب، نصب، مشکلات رایج و رفع آن‌ها پایگاه دانش

راهنمای کامل درایور استپرموتور: انتخاب، نصب، مشکلات رایج و رفع آن‌ها

راهنمای جامع درایور استپرموتور. نحوه انتخاب، نصب، رفع مشکلات رایج و بهترین برندها برای پروژه‌های مختلف از جمله رباتیک و CNC.
2 ماه قبل
راهنمای جامع درایور استپرموتور – انواع، کاربردها و نکات خرید پایگاه دانش

راهنمای جامع درایور استپرموتور – انواع، کاربردها و نکات خرید

با راهنمای جامع درایور استپرموتور آشنا شوید. بررسی انواع درایور، کاربردها، نکات کلیدی خرید، برندهای معروف و راهنمای نصب و عیب‌یابی به زبان ساده.
2 ماه قبل
کاربرد استپ موتور و مقایسه انواع آن در صنایع مختلف پایگاه دانش

کاربرد استپ موتور و مقایسه انواع آن در صنایع مختلف

با استپر موتور، انواع آن و کاربردهای متنوعش در صنایع مختلف آشنا شوید. این مقاله به بررسی کامل استپر موتور و نقش آن در فناوری‌های مدرن می‌پردازد.​
2 ماه قبل
ساخت مکعب ال‌ ای‌ دی پایگاه دانش

ساخت مکعب ال‌ ای‌ دی

ساختن مکعب ال ای دی، در این آموزش با مکعب ال ای دی آشنا می‌شویم و نحوهٔ ساخت آن را می‌آوزیم
4 ماه قبل
تاکنون هیچ نظری ثبت نشده است.
برای ثبت نظر وارد حساب کاربری خود شوید.