📡 ماموریت ۴۰: رادار چرخان

سنسور فاصله رو روی سروو بذار، زاویه رو جارو کن و هر زاویه رو با فاصله‌ش چاپ کن.

سطح: چالشی ⭐⭐⭐ · مود: آردوینو — با کد

هدف‌ها

قطعه‌های لازم

▶ همین ماموریت را در شبیه‌ساز امتحان کن
💡 گیر کردی؟ داخل شبیه‌ساز راهنما را ببین، و اگر باز هم نشد دکمه‌ی «برام حلش کن» مدار را برایت می‌چیند تا ببینی چطور کار می‌کند.

جواب کامل

اول خودت امتحان کن! بعد جواب را ببین 👀

سیم‌کشی

  1. Arduino Uno (VCC5) ⟷ سروو موتور (VCC)
  2. سروو موتور (GND) ⟷ Arduino Uno (GND1)
  3. Arduino Uno (D11) ⟷ سروو موتور (SIG)
  4. Arduino Uno (VCC5) ⟷ Ultrasonic (HC-SR04) (VCC)
  5. Arduino Uno (D9) ⟷ Ultrasonic (HC-SR04) (TRIG)
  6. Ultrasonic (HC-SR04) (ECHO) ⟷ Arduino Uno (D10)
  7. Ultrasonic (HC-SR04) (GND) ⟷ Arduino Uno (GND2)

کد

#include <Servo.h>
Servo head;
const int trig = 9, echo = 10;

long readDistance() {
  digitalWrite(trig, LOW);
  delayMicroseconds(2);
  digitalWrite(trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(trig, LOW);
  long d = pulseIn(echo, HIGH, 30000);
  return d == 0 ? 400 : d / 58;
}

void setup() {
  head.attach(11);
  pinMode(trig, OUTPUT);
  pinMode(echo, INPUT);
  Serial.begin(9600);
}

void loop() {
  for (int a = 15; a <= 165; a += 5) {
    head.write(a);
    delay(60);
    Serial.print("zavie:");
    Serial.print(a);
    Serial.print(" fasele:");
    Serial.println(readDistance());
  }
}

ماموریت‌های مشابه

🤖

ماموریت ۳۹: ربات مانع‌گریز

🔩

ماموریت ۴۱: چرخش دقیق

🚗

ماموریت ۳۸: ماشین رباتیک

🦾

ماموریت ۴۲: بازوی رباتیک

📚 برای یاد گرفتن پایه‌ها سری به دوره‌ی آموزش آردوینو بزن · 🎯 همه‌ی ماموریت‌ها