Cara Membuat Robot Mengikuti Manusia Dengan Arduino: 3 Langkah
Cara Membuat Robot Mengikuti Manusia Dengan Arduino: 3 Langkah
Anonim
Cara Membuat Robot Mengikuti Manusia Dengan Arduino
Cara Membuat Robot Mengikuti Manusia Dengan Arduino

Manusia mengikuti akal manusia dan mengikuti manusia

Langkah 1: Dapatkan Alat

Dapatkan Alat
Dapatkan Alat
Dapatkan Alat
Dapatkan Alat
Dapatkan Alat
Dapatkan Alat

Dapatkan alat seperti: Sensor ultrasonik SensorArduino uno 4 motor gear dengan rodaServo Battery and case case Pemacu motor Wayar jumper Chassis

Langkah 2: Menyambung

Menyambung
Menyambung
Menyambung
Menyambung
Menyambung
Menyambung
Menyambung
Menyambung

Sambungkan setiap peralatan ke pemandu motor. Sambungkan pemandu motor ke arduino.

Langkah 3: Kod

Kod
Kod

# include # include # include # define RIGHT A2 # define LEFT A3 # define TRIGGER_PIN A1 #efinisikan ECHO_PIN A0 # define MAX_DISTANCE 100NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); AF_DCMotor Motor1 (1, MOTOR12_1), MOTOR12_1; AF_DCMotor Motor3 (3, MOTOR34_1KHZ); AF_DCMotor Motor4 (4, MOTOR34_1KHZ); Servo myservo; int pos = 0; void setup () {// letakkan kod persediaan anda di sini, untuk dijalankan sekali: Serial.begin (9600); myservo.attach (10); {untuk (pos = 90; pos <= 180; pos + = 1) {myservo.write (pos); kelewatan (15);} untuk (pos = 180; pos> = 0; pos- = 1) {myservo.write (pos); kelewatan (15);} untuk (pos = 0; pos <= 90; pos + = 1) {myservo.write (pos); kelewatan (15);}} pinMode (KANAN, INPUT); pinMode (KIRI, INPUT);} gelung kosong () {// letakkan kod utama anda di sini, untuk dijalankan berulang kali: tunda (50); int jarak tidak bertanda = sonar.ping_cm (); Serial.print ("jarak"); Serial.println (jarak); int Right_Value = digitalRead (KANAN); int Left_Value = digitalRead (KIRI); Serial.print ("KANAN"); Serial.println (Right_Value); Serial.print ("LEFT"); Serial.println (Left_Value); if ((Right_Value == 1) && (jarak> = 10 && jarak <= 30) && (Left_Value == 1)) {Motor1.setSpeed (120); Motor1.run (KEHADIRAN); Motor2.setSpeed (120); Motor2.run (KEHADIRAN); Motor3.setSpeed (120); Motor3.run (KEHADIRAN); Motor4.setSpeed (120); Motor4.run (FORWARD);} lain jika ((Right_Value == 0) && (Left_Value == 1)) {Motor1.setSpeed (200); Motor1.run (KEHADIRAN); Motor2.setSpeed (200); Motor2.run (KEHADIRAN); Motor3.setSpeed (100); Motor3.run (KEMBALI); Motor4.setSpeed (100); Motor4.run (BACKWARD);} lain jika ((Right_Value == 1) && (Left_Value == 0)) {Motor1.setSpeed (100); Motor1.run (KEMBALI); Motor2.setSpeed (100); Motor2.run (KEMBALI); Motor3.setSpeed (200); Motor3.run (KEHADIRAN); Motor4.setSpeed (200); Motor4.run (FORWARD);} lain jika ((Right_Value == 1) && (Left_Value == 1)) {Motor1.setSpeed (0); Motor1.run (SIARAN); Motor2.setSpeed (0); Motor2.run (SIARAN); Motor3.setSpeed (0); Motor3.run (SIARAN); Motor4.setSpeed (0); Motor4.run (RELEASE);} lain jika (jarak> 1 && jarak <10) {Motor1.setSpeed (0); Motor1.run (SIARAN); Motor2.setSpeed (0); Motor2.run (SIARAN); Motor3.setSpeed (0); Motor3.run (SIARAN); Motor4.setSpeed (0); Motor4.run (SIARAN); }}

Disyorkan: