🤖 روبومیکرآموزش آردوینوشبیه‌ساز آنلاین
روبومیکرآموزش آردوینومتغیر و شرط (if/else)

متغیر و شرط (if/else)

تا اینجا یاد گرفتیم چطور به آردوینو فرمان بدهیم. اما برنامهٔ واقعی باید بتواند داده‌ها را نگه دارد و بر اساس آن‌ها تصمیم بگیرد. ابزار این کار «متغیر» و «دستور شرطی» است.

متغیر چیست؟

متغیر یک جعبه با اسم است که داخل آن یک مقدار ذخیره می‌کنیم. هر متغیر یک «نوع» دارد:

int ledPin = 8;
float voltage = 4.7;
bool isDark = false;

دستور شرطی if/else

با if می‌گوییم «اگر یک شرط درست بود، این کارها را انجام بده؛ وگرنه (else) کار دیگری بکن». برای مقایسه از این عملگرها استفاده می‌کنیم: > بزرگ‌تر، < کوچک‌تر، >= و <=، == برابر بودن و != نابرابر بودن.

دقت کن: برای مقایسه از دو مساوی (==) استفاده کن. یک مساوی (=) یعنی «مقداردهی» نه «مقایسه».

مثال: خواندن سنسور و تصمیم‌گیری

فرض کن یک سنسور نور به پایهٔ آنالوگ A0 وصل است. اگر محیط تاریک شد، LED را روشن می‌کنیم؛ در غیر این صورت خاموش.

int lightPin = A0;
int ledPin = 8;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int lightValue = analogRead(lightPin);  // عددی بین 0 تا 1023
  Serial.println(lightValue);

  if (lightValue < 400) {
    digitalWrite(ledPin, HIGH);   // تاریک است، چراغ روشن
  } else {
    digitalWrite(ledPin, LOW);    // روشن است، چراغ خاموش
  }

  delay(200);
}

در این کد analogRead یک عدد می‌خواند، آن را در متغیر lightValue می‌گذاریم و با شرط if مقایسه می‌کنیم. عدد 400 آستانهٔ ما است؛ می‌توانی آن را تغییر دهی تا حساسیت دلخواهت را بگیری.

اسم متغیر نباید با عدد شروع شود و نباید فاصله داشته باشد. از اسم‌های بامعنی مثل lightValue استفاده کن تا کدت خواناتر شود.

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

🔌 همین حالا توی شبیه‌ساز آنلاین روبومیکر امتحان کن — رایگان و بدون نصب