Arduino ile İnsan Takip Robotu Nasıl Yapılır: 3 Adım
Arduino ile İnsan Takip Robotu Nasıl Yapılır: 3 Adım
Anonim
Arduino ile İnsan Takip Robotu Nasıl Yapılır?
Arduino ile İnsan Takip Robotu Nasıl Yapılır?

İnsan robot algısını takip ediyor ve insanı takip ediyor

1. Adım: Araçları Alın

Araçları Alın
Araçları Alın
Araçları Alın
Araçları Alın
Araçları Alın
Araçları Alın

Şuna benzer araçları edinin: Ultrasonik sensörSensorArduino uno WheelServo'lu 4 dişli motorlar Akü ve akü kutusu Motor sürücüsü Atlama telleri Şasi

2. Adım: Bağlanma

Bağlanıyor
Bağlanıyor
Bağlanıyor
Bağlanıyor
Bağlanıyor
Bağlanıyor
Bağlanıyor
Bağlanıyor

Her ekipmanı motor sürücüsüne bağlayın. Motor sürücüsünü arduino'ya bağlayın.

3. Adım: Kodlayın

kod
kod

#include#include#include#define SAĞ A2#define SOL A3#define TRIGGER_PIN A1#define ECHO_PIN A0#define MAX_DISTANCE 100YeniPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);AF_DCMotor Motor1(1, MOTOR12_DKK2,MOTOR12_DCKZ);;AF_DCMotor Motor3(3, MOTOR34_1KHZ);AF_DCMotor Motor4(4, MOTOR34_1KHZ);Servo myservo;int pos =0;void setup() { // bir kez çalıştırmak için kurulum kodunuzu buraya koyun: Serial.begin(9600);myservo.attach(10);{for(konum = 90; konum <= 180; konum += 1){ myservo.write(kon); gecikme(15);} for(konum = 180; konum >= 0; konum-= 1) { myservo.write(kon); gecikme(15);}for(konum = 0; konum<=90; konum += 1) { myservo.write(kon); delay(15);}}pinMode(RIGHT, INPUT);pinMode(LEFT, INPUT);}void loop() { // tekrar tekrar çalıştırmak için ana kodunuzu buraya koyun: delay(50); unsigned int mesafe = sonar.ping_cm();Serial.print("mesafe");Serial.println(mesafe);int Right_Value = digitalRead(RIGHT);int Left_Value = digitalRead(LEFT);Serial.print("SAĞ");Serial.println(Right_Value);Serial.print("LEFT");Serial.println(Left_Value);if((Right_Value==1) && (mesafe>=10 && mesafe<=30)&&(Left_Value==1)){ Motor1.setSpeed(120); Motor1.run(İLERİ); Motor2.setSpeed(120); Motor2.run(İLERİ); Motor3.setSpeed(120); Motor3.run(İLERİ); Motor4.setSpeed(120); Motor4.run(FORWARD);}else if((Right_Value==0) && (Left_Value==1)) { Motor1.setSpeed(200); Motor1.run(İLERİ); Motor2.setSpeed(200); Motor2.run(İLERİ); Motor3.setSpeed(100); Motor3.run(GERİ); Motor4.setSpeed(100); Motor4.run(BACKWARD);}else if((Right_Value==1)&&(Left_Value==0)) { Motor1.setSpeed(100); Motor1.run(GERİ); Motor2.setSpeed(100); Motor2.run(GERİ); Motor3.setSpeed(200); Motor3.run(İLERİ); Motor4.setSpeed(200); Motor4.run(FORWARD);}else if((Right_Value==1)&&(Left_Value==1)) { Motor1.setSpeed(0); Motor1.run(ÇALIŞTIR); Motor2.setSpeed(0); Motor2.run(ÇALIŞTIR); Motor3.setSpeed(0); Motor3.run(ÇALIŞTIR); Motor4.setSpeed(0); Motor4.run(RELEASE);}else if(mesafe > 1 && mesafe < 10) { Motor1.setSpeed(0); Motor1.run(ÇALIŞTIR); Motor2.setSpeed(0); Motor2.run(ÇALIŞTIR); Motor3.setSpeed(0); Motor3.run(ÇALIŞTIR); Motor4.setSpeed(0); Motor4.run(ÇALIŞTIR); } }

Önerilen: