ردیاب خورشیدی دو محوره با آردوینو
پنلهای خورشیدی وقتی دقیقا رو به خورشید باشن، بیشترین بازدهی رو دارن. اما چون خورشید تو طول روز حرکت میکنه، ثابت موندن پنل باعث میشه کلی انرژی رو از دست بدیم. اینجاست که یه ردیاب خورشیدی یا سولار ترکر میتونه حسابی به دردمون بخوره و پنل رو همیشه دقیقا به سمت نور هدایت کنه.
امروز تو آیسیمدار میخوایم یه ردیاب خورشیدی هوشمند و دو محوره بسازیم. این سیستم با استفاده از چند تا سنسور نوری ساده (LDR) و دو تا سروو موتور، مسیر حرکت خورشید یا هر منبع نوری دیگهای رو تشخیص میده و سازه رو دقیقا همون سمتی میچرخونه که بیشترین نور تابیده میشه.
ساخت این پروژه خیلی ساده و جذابه و برای یادگیری کار با سنسورها و کنترل موتورها تو دنیای آردوینو، یه انتخاب عالی محسوب میشه. پس وسایلت رو آماده کن تا بریم سراغ ساخت این گجت کاربردی و هوشمند.
قطعات موردنیاز
- 2 عدد سروو موتور
- 4 عدد مقاومت نوری (LDR یا فتوسل)
- 4 عدد مقاومت 10 کیلواهم
- برد آردوینو UNO
- 2 عدد پتانسیومتر 10 کیلواهم
این ردیاب خورشیدی چطور کار میکنه؟
نحوه کار این سیستم خیلی ساده و در عین حال هوشمندانهست. ما یه سنسور نوری ترکیبی میسازیم که از 4 تا فتوسل (LDR) تشکیل شده و بینشون تیغههای جداکننده به شکل صلیب قرار گرفته. (تو عکسها نقطههای سفید همون LDRها هستن).
وقتی نور دقیقا از روبهرو بتابه، همه سنسورها نور یکسانی دریافت میکنن. اما مثلا اگه نور از سمت چپ و بالا بتابه، سنسورهای سمت راست و پایین میرن تو سایه اون تیغهها و فقط سنسور بالا-چپ بیشترین نور رو میگیره. آردوینو این اختلاف میزان نور رو تشخیص میده و به سروو موتورها دستور میده تا اونقدر بچرخن که دوباره سایهها از بین برن و نور روی همه سنسورها یکسان بشه.
لیست قطعات مورد نیاز
- 2 عدد سروو موتور
- 4 عدد مقاومت نوری (LDR یا فتوسل)
- 4 عدد مقاومت 10 کیلواهم
- 1 عدد برد آردوینو (مدل UNO پیشنهاد میشه)
- 2 عدد پتانسیومتر 10 کیلواهم
مونتاژ و سرهم کردن قطعات فیزیکی
برای سرهم کردن بخش فیزیکی این پروژه، اصلا نیازی به ابزارهای پیچیده نداری. کافیه از چسب حرارتی استفاده کنی تا سنسورها، تیغههای جداکننده و سروو موتورها رو به هم متصل کنی. همونطور که تو عکسها مشخصه، اول یه ساختار صلیبی شکل بین 4 تا سنسور نوری ایجاد کن تا سایهها به درستی تشکیل بشن.
بعدش سروو موتورها رو طوری روی هم سوار کن که یکی بتونه سازه رو تو محور افقی (چپ و راست) بچرخونه و اون یکی تو محور عمودی (بالا و پایین) حرکتش بده.
سیمکشی و اتصالات مدار
برنامهنویسی و آپلود کد آردوینو
حالا نوبت به مغز متفکر پروژه یعنی کدهای آردوینو میرسه. تو این کد از کتابخونه Servo استفاده کردیم تا حرکت موتورها رو به راحتی کنترل کنیم. مقادیر آنالوگ سنسورها خونده میشه و پتانسیومترها هم برای تنظیم میزان تلورانس (حساسیت به نور) و سرعت واکنش سیستم استفاده میشن.
کد زیر رو تو نرمافزار آردوینو کپی کن و روی برد آپلود کن: #include <Servo.h> Servo horizontal; int servoh = 90; Servo vertical; int servov = 90; int ldrlt = 0; // LDR بالا چپ int ldrrt = 1; // LDR بالا راست int ldrld = 2; // LDR پایین چپ int ldrrd = 3; // LDR پایین راست void setup() { Serial.begin(9600); horizontal.attach(9); vertical.attach(10); } void loop() { int lt = analogRead(ldrlt); int rt = analogRead(ldrrt); int ld = analogRead(ldrld); int rd = analogRead(ldrrd); int dtime = analogRead(4)/20; int tol = analogRead(5)/4; int avt = (lt + rt) / 2; int avd = (ld + rd) / 2; int avl = (lt + ld) / 2; int avr = (rt + rd) / 2; int dvert = avt - avd; int dhoriz = avl - avr; if (-1*tol > dvert || dvert > tol) { if (avt > avd) { servov = ++servov; if (servov > 180) { servov = 180; } } else if (avt < avd) { servov= --servov; if (servov < 0) { servov = 0; } } vertical.write(servov); } if (-1*tol > dhoriz || dhoriz > tol) { if (avl > avr) { servoh = --servoh; if (servoh < 0) { servoh = 0; } } else if (avl < avr) { servoh = ++servoh; if (servoh > 180) { servoh = 180; } } else if (avl == avr) { // تغییری ایجاد نمیشود } horizontal.write(servoh); } delay(dtime); } حالا دستگاهت کاملا آمادهست!
میتونی تو یه اتاق تاریک با یه چراغقوه تستش کنی و ببینی چطور دقیقا مسیر نور رو دنبال میکنه. حتما این آموزش رو برای دوستات هم بفرست تا اونا هم بتونن این گجت خفن رو بسازن. موفق باشی!
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.








































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!