فهرست مطالب:

چگونه می توان با آردوینو یک روبات انسانی را دنبال کرد: 3 مرحله
چگونه می توان با آردوینو یک روبات انسانی را دنبال کرد: 3 مرحله

تصویری: چگونه می توان با آردوینو یک روبات انسانی را دنبال کرد: 3 مرحله

تصویری: چگونه می توان با آردوینو یک روبات انسانی را دنبال کرد: 3 مرحله
تصویری: 😉 وقتی شوهرش سرکاره، ربات مرد تمام خواسته های زن را برآورده می کند 2024, نوامبر
Anonim
چگونه با آردوینو یک ربات دنبال کننده انسان بسازیم
چگونه با آردوینو یک ربات دنبال کننده انسان بسازیم

انسان از روبات پیروی می کند و از انسان پیروی می کند

مرحله 1: ابزارها را دریافت کنید

ابزارها را دریافت کنید
ابزارها را دریافت کنید
ابزارها را دریافت کنید
ابزارها را دریافت کنید
ابزارها را دریافت کنید
ابزارها را دریافت کنید

ابزارهایی مانند: سنسور اولتراسونیک سنسور Arduino uno 4 موتورهای دنده ای با چرخ Servo باتری و قاب باتری راننده موتور Jumper سیم شاسی

مرحله 2: اتصال

برقراری ارتباط
برقراری ارتباط
برقراری ارتباط
برقراری ارتباط
برقراری ارتباط
برقراری ارتباط
برقراری ارتباط
برقراری ارتباط

همه تجهیزات را به راننده موتور وصل کنید. راننده موتور را به arduino وصل کنید.

مرحله 3: کد

کد
کد

#شامل#شامل#شامل#تعریف RIGHT A2#تعریف LEFT A3#تعریف TRIGGER_PIN A1#تعریف ECHO_PIN A0#تعریف MAX_DISTANCE 100 سونار NewPing (TRIGGER_PIN ، ECHO_PIN ، MAX_DISTANCE) ؛ AF_DCMotor Motor1 ؛ AF_DCMotor Motor3 (3 ، MOTOR34_1KHZ) ؛ AF_DCMotor Motor4 (4 ، MOTOR34_1KHZ) ؛ Servo myservo ؛ int pos = 0 ؛ void setup () {// کد راه اندازی خود را در اینجا قرار دهید ، تا یکبار اجرا شود: Serial.begin (9600) ؛ myservo.attach (10) ؛ {for (pos = 90؛ pos <= 180؛ pos += 1) {myservo.write (pos)؛ تأخیر (15)؛} برای (pos = 180؛ pos> = 0؛ pos- = 1) {myservo.write (pos)؛ تأخیر (15)؛} برای (pos = 0؛ pos <= 90؛ pos += 1) {myservo.write (pos)؛ تأخیر (15)؛}} pinMode (RIGHT، INPUT)؛ pinMode (LEFT، INPUT)؛} void loop () {// کد اصلی خود را در اینجا قرار دهید تا بارها اجرا شود: تاخیر (50)؛ unsigned int distance = sonar.ping_cm ()؛ Serial.print ("distance")؛ Serial.println (distance)؛ int Right_Value = digitalRead (RIGHT)؛ int Left_Value = digitalRead (LEFT)؛ Serial.print ("RIGHT") ؛ Serial.println (Right_Value)؛ Serial.print ("LEFT")؛ Serial.println (Left_Value)؛ if ((Right_Value == 1) && (distance> = 10 && distance <= 30) && (Left_Value == 1)) {Motor1.setSpeed (120) ؛ Motor1.run (به جلو) ؛ Motor2.setSpeed (120) ؛ Motor2.run (به جلو) ؛ Motor3.setSpeed (120) ؛ Motor3.run (به جلو) ؛ Motor4.setSpeed (120) ؛ Motor4.run (FORWARD)؛} if if ((Right_Value == 0) && (Left_Value == 1)) {Motor1.setSpeed (200)؛ Motor1.run (به جلو) ؛ Motor2.setSpeed (200) ؛ Motor2.run (به جلو) ؛ Motor3.setSpeed (100) ؛ Motor3.run (BACKWARD) ؛ Motor4.setSpeed (100) ؛ Motor4.run (BACKWARD) ؛} if if ((Right_Value == 1) && (Left_Value == 0)) {Motor1.setSpeed (100) ؛ Motor1.run (BACKWARD) ؛ Motor2.setSpeed (100) ؛ Motor2.run (BACKWARD) ؛ Motor3.setSpeed (200) ؛ Motor3.run (به جلو) ؛ Motor4.setSpeed (200) ؛ Motor4.run (FORWARD)؛} if if ((Right_Value == 1) && (Left_Value == 1)) {Motor1.setSpeed (0)؛ Motor1.run (انتشار) ؛ Motor2.setSpeed (0) ؛ Motor2.run (انتشار) ؛ Motor3.setSpeed (0) ؛ Motor3.run (انتشار) ؛ Motor4.setSpeed (0) ؛ Motor4.run (RELEASE)؛} if if (distance> 1 && distance <10) {Motor1.setSpeed (0)؛ Motor1.run (انتشار) ؛ Motor2.setSpeed (0) ؛ Motor2.run (انتشار) ؛ Motor3.setSpeed (0) ؛ Motor3.run (انتشار) ؛ Motor4.setSpeed (0) ؛ Motor4.run (انتشار) ؛ }}

توصیه شده: