Spisu treści:

Jak zrobić robota podążającego za człowiekiem za pomocą Arduino: 3 kroki?
Jak zrobić robota podążającego za człowiekiem za pomocą Arduino: 3 kroki?

Wideo: Jak zrobić robota podążającego za człowiekiem za pomocą Arduino: 3 kroki?

Wideo: Jak zrobić robota podążającego za człowiekiem za pomocą Arduino: 3 kroki?
Wideo: Czy młody zbuduje robota? #diy #elektronika #robot 2024, Listopad
Anonim
Jak zrobić robota podążającego za człowiekiem za pomocą Arduino?
Jak zrobić robota podążającego za człowiekiem za pomocą Arduino?

Człowiek podąża za robotem i podąża za człowiekiem

Krok 1: Pobierz narzędzia

Pobierz narzędzia
Pobierz narzędzia
Pobierz narzędzia
Pobierz narzędzia
Pobierz narzędzia
Pobierz narzędzia

Uzyskaj narzędzia takie jak: Czujnik ultradźwiękowyCzujnik Motoreduktory Arduino uno 4 z kołem Servo Akumulator i obudowa akumulatora Sterownik silnika Przewody połączeniowe Obudowa

Krok 2: Łączenie

Złączony
Złączony
Złączony
Złączony
Złączony
Złączony
Złączony
Złączony

Podłącz każdy sprzęt do sterownika silnika. Podłącz sterownik silnika do arduino.

Krok 3: Kod

Kod
Kod

#include#include#include#definiuj PRAWY A2#definiuj LEWY A3#definiuj TRIGGER_PIN A1#definiuj ECHO_PIN A0#definiuj MAX_DISTANCE 100NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);AF_DCMotor Motor1(1, MOTOR_12(12,1)KHZ);;AF_DCMotor Motor3(3, MOTOR34_1KHZ);AF_DCMotor Motor4(4, MOTOR34_1KHZ);Servo myservo;int pos =0;void setup() { // wpisz tutaj swój kod konfiguracji, aby uruchomić raz: Serial.begin(9600);myservo.attach(10);{for(poz = 90; poz <= 180; poz += 1){ myservo.write(poz); opóźnienie(15);} for(poz = 180; poz >= 0; poz-= 1) { myservo.write(poz); delay(15);}for(poz = 0; poz<=90; poz += 1) { myservo.write(poz); delay(15);}}pinMode(RIGHT, INPUT);pinMode(LEFT, INPUT);}void loop() { // umieść tutaj swój główny kod, aby uruchamiał się wielokrotnie: delay(50); unsigned int distance = sonar.ping_cm();Serial.print("odległość");Serial.println(odległość);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) && (odległość>=10 && odległość<=30)&&(Left_Value==1)){ Silnik1. UstawPrędkość(120); Motor1.uruchom (DO PRZODU); Silnik2.ustaw Prędkość(120); Motor2.run (DO PRZODU); Motor3.setSpeed(120); Motor3.run (DO PRZODU); Motor4.setSpeed(120); Motor4.run(FORWARD);}else if((Right_Value==0) && (Left_Value==1)) { Motor1.setSpeed(200); Motor1.uruchom (DO PRZODU); Silnik2.ustaw Prędkość (200); Motor2.run (DO PRZODU); Silnik3.ustawPrędkość(100); Motor3.uruchom (WSTECZ); Motor4.setSpeed (100); Motor4.run(BACKWARD);}else if((Right_Value==1)&&(Left_Value==0)) { Motor1.setSpeed(100); Silnik1.uruchom(WSTECZ); Silnik2.ustaw Prędkość (100); Motor2.run (WSTECZ); Motor3.setSpeed (200); Motor3.run (DO PRZODU); Motor4.setSpeed (200); Motor4.run(FORWARD);}else if((Right_Value==1)&&(Left_Value==1)) { Motor1.setSpeed(0); Motor1.run(RELEASE); Motor2.setSpeed(0); Motor2.run(RELEASE); Motor3.setSpeed(0); Motor3.run(RELEASE); Motor4.setSpeed(0); Motor4.run(RELEASE);}else if(odległość > 1 && odległość < 10) { Motor1.setSpeed(0); Motor1.run(RELEASE); Motor2.setSpeed(0); Motor2.run(RELEASE); Motor3.setSpeed(0); Motor3.run(RELEASE); Motor4.setSpeed(0); Motor4.run(RELEASE); } }

Zalecana: