🌞 ردیاب خورشید

دو LDR نور چپ و راست را مقایسه می‌کنند و سروو به سمت نور می‌چرخد.

سطح: چالشی ⭐⭐⭐ · مود: آردوینو (سه‌بعدی + کد)

قطعات لازم

کد کامل پروژه

// ردیاب خورشید: دو LDR، یک سروو، یک «ناحیه‌ی مرده»
#include <Servo.h>

Servo panel;
int angle = 90;
const int deadBand = 30;   // ignore small differences (noise)

void setup() {
  panel.attach(9);
  panel.write(angle);
  Serial.begin(9600);
}

void loop() {
  int left = analogRead(A0);    // more light = bigger number
  int right = analogRead(A1);
  int diff = left - right;

  if (diff > deadBand) {
    angle = angle + 1;          // more light on the left: turn left
  } else if (diff < -deadBand) {
    angle = angle - 1;          // more light on the right: turn right
  }
  angle = constrain(angle, 0, 180);
  panel.write(angle);

  Serial.print("left:");
  Serial.print(left);
  Serial.print(" right:");
  Serial.print(right);
  Serial.print(" angle:");
  Serial.println(angle);
  delay(20);
}

چطور اجرایش کنم؟

  1. شبیه‌ساز تینکرکد فارسی را باز کن و «مود آردوینو» را انتخاب کن.
  2. از پنل «نمونه‌ها»، «ردیاب خورشید» را بارگذاری کن — مدار و کد با هم می‌آیند.
  3. دکمه‌ی اجرا ▶ را بزن و خروجی Serial و رفتار قطعات را تماشا کن.
  4. حالا کد را تغییر بده — عددها، پین‌ها، ترتیب — و دوباره اجرا کن!
این پروژه را رایگان در شبیه‌ساز اجرا کن 🤖