Wie man einen menschlichen folgenden Roboter mit Arduino macht - Gunook
Wie man einen menschlichen folgenden Roboter mit Arduino macht - Gunook
Anonim
Wie man mit Arduino einen menschlichen folgenden Roboter baut
Wie man mit Arduino einen menschlichen folgenden Roboter baut

Der Mensch folgt dem Robotersinn und folgt dem Menschen

Schritt 1: Holen Sie sich die Werkzeuge

Holen Sie sich die Werkzeuge
Holen Sie sich die Werkzeuge
Holen Sie sich die Werkzeuge
Holen Sie sich die Werkzeuge
Holen Sie sich die Werkzeuge
Holen Sie sich die Werkzeuge

Holen Sie sich die Tools wie: UltraschallsensorSensorArduino uno 4 Getriebemotoren mit RadServo Batterie und Batteriefach Motortreiber Überbrückungsdrähte Chassis

Schritt 2: Anschließen

Anschließen
Anschließen
Anschließen
Anschließen
Anschließen
Anschließen
Anschließen
Anschließen

Verbinden Sie alle Geräte mit dem Motortreiber. Verbinden Sie den Motortreiber mit Arduino.

Schritt 3: Code

Code
Code

#include#include#include#define RECHTS A2#define LINKS A3#define TRIGGER_PIN A1#define ECHO_PIN A0#define MAX_DISTANCE 100Neuer Ping-Sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);AF_DCMotor Motor1(1, MOTOR_12,DCH);AF_DCMotor Motor3(3, MOTOR34_1KHZ);AF_DCMotor Motor4(4, MOTOR34_1KHZ);Servo myservo;int pos =0;void setup() { // Geben Sie Ihren Setup-Code hier ein, um ihn einmal auszuführen: Serial.begin (9600); myservo.attach(10);{for(pos = 90; pos <= 180; pos += 1){ myservo.write(pos); Verzögerung (15);} for(pos = 180; pos >= 0; pos-= 1) { myservo.write (pos); Verzögerung (15);} für (pos = 0; pos <= 90; pos + = 1) { myservo.write (pos); delay(15);}}pinMode(RIGHT, INPUT);pinMode(LEFT, INPUT);}void loop() {// füge deinen Hauptcode hier ein, um ihn wiederholt auszuführen: delay(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) && (Abstand>=10 && Abstand<=30)&&(Left_Value==1)) {Motor1.setSpeed (120); Motor1.run(FORWARD); Motor2.setSpeed (120); Motor2.run (FOWARD); Motor3.setSpeed(120); Motor3.run(FOWARD); Motor4.setSpeed(120); Motor4.run(FORWARD);}else if((Right_Value==0) && (Left_Value==1)) { Motor1.setSpeed(200); Motor1.run(FORWARD); Motor2.setSpeed (200); Motor2.run (FOWARD); Motor3.setSpeed (100); Motor3.run (RÜCKWÄRTS); Motor4.setSpeed (100); Motor4.run(BACKWARD);}else if((Right_Value==1)&&(Left_Value==0)) { Motor1.setSpeed(100); Motor1.run (RÜCKWÄRTS); Motor2.setSpeed (100); Motor2.run (RÜCKWÄRTS); Motor3.setSpeed (200); Motor3.run(FOWARD); Motor4.setSpeed (200); Motor4.run(FORWARD);}else if((Right_Value==1)&&(Left_Value==1)) { Motor1.setSpeed(0); Motor1.run (FREIGABE); Motor2.setSpeed(0); Motor2.run (FREIGABE); Motor3.setSpeed(0); Motor3.run (FREIGABE); Motor4.setSpeed(0); Motor4.run(RELEASE);}else if(Abstand > 1 && Abstand <10) { Motor1.setSpeed(0); Motor1.run (FREIGABE); Motor2.setSpeed(0); Motor2.run (FREIGABE); Motor3.setSpeed(0); Motor3.run (FREIGABE); Motor4.setSpeed(0); Motor4.run (FREIGABE); } }

Empfohlen: