At sa gayon kailangan namin:
-Arduino Uno
-2 gear
Ultrasonic Rangefinder HS-SR04
kuwintas
orgglass
-dap-jumper wires
Driver ng engine ng L298D
-crown na baterya
6-12 V na baterya
gulong
At kung gayon, para sa mga nagsisimula, kailangan mong ibenta ang mga wire sa ultrasonic sensor:
Pagkatapos ay kailangan mong ibenta ang mga wires (na may pre-cut output na "ina") sa mga gearbox. Sa halip na mga gulong, kumuha ako ng mga takip mula sa 5 litro bote at nakadikit ng isang balat sa kanila para sa mas mahusay na pagkakahawak.
Ngayon kailangan mong i-cut ang frame mula sa plexiglass o playwud, na ipasadya ito upang umangkop sa iyong mga kinakailangan, personal kong ginawa ito:
Pagkatapos ay kailangan mong dumikit sa aming frame: isang baterya (Gumagamit ako ng 4 na baterya 1.5 V na soldered sa serye), isang motor driver, isang korona, gearbox, isang sensor ng ultrasonic, tulad ng ipinapakita sa larawan:
Bago dumikit ang arduino uno kailangan mong mag-upload ng sumusunod na sketch dito:
#define Trig 8
#define echo 9
const int in1 = 2; // IN4 pin 2
const int in2 = 4; // IN3 pin 4
const int in3 = 5; // IN2 pin 5
const int in4 = 7; // IN1 pin 7
int ENB1 = 3;
int ENA2 = 6;
walang pag-setup ()
{
pinMode (Trig, OUTPUT); // labasan
pinMode (Echo, INPUT); // input
pinMode (in1, OUTPUT); // exit sa L298n
pinMode (in2, OUTPUT); // exit sa L298n
pinMode (in3, OUTPUT); // exit sa L298n
pinMode (in4, OUTPUT); // exit sa L298n
pinMode (ENB1, OUTPUT);
pinMode (ENA2, OUTPUT);
}
unsigned int impulseTime = 0;
unsigned int distansya_sm = 0;
walang bisa loop ()
{
digitalWrite (Trig, HIGH);
pagkaantalaMicroseconds (10); // 10 microseconds
digitalWrite (Trig, LOW);
salpokTime = pulseIn (Echo, HIGH); // sukatin ang haba ng pulso
distansya_sm = salpokTime / 58; // convert sa sentimetro
kung (distansya_sm> 20) // kung ang distansya ay higit sa 20 sentimetro
{
digitalWrite (in1, HIGH);
pagkaantala (300);
digitalWrite (in1, LOW);
digitalWrite (in2, LOW);
digitalWrite (in3, HIGH);
pagkaantala (300);
digitalWrite (in3, LOW);
digitalWrite (in4, LOW);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
}
iba pa
{
digitalWrite (in1, LOW);
digitalWrite (in2, LOW);
digitalWrite (in3, LOW);
digitalWrite (in4, LOW);
pagkaantala (500);
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
digitalWrite (in3, LOW);
digitalWrite (in4, HIGH);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
pagkaantala (200);
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
digitalWrite (in3, HIGH);
digitalWrite (in4, LOW);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
pagkaantala (100);
}
pagkaantala (50);
}
Pagkatapos ma-load ang sketch, maaari mong idikit ang arduino at korona:
Ngayon kailangan mong ikonekta ang lahat ng mga sangkap ayon sa sumusunod na pamamaraan:
Una sa lahat, ikinonekta namin ang ultrasonic sensor:
Mga Mesin:
Nutrisyon:
Ikinonekta namin ang driver ng engine sa arduino:
Sa pagtatapos ng aming robot, ipako ang isang bead:
Kumbaga, lahat tayo iyon ang robot handa na, nananatiling lamang upang maiugnay ang natitirang kapangyarihan, at sa gayon pinapakain namin ang arduino na may "korona" na kumokonekta + sa UIN, at sa GND, kung tama ang koneksyon sa arduino, ang pulang LED ay dapat na sindihan:
Ngayon kumonekta kami - ang aming "nagtitipon" sa GND, ang pulang LED ay dapat ding magagaan sa driver:
kung ang mga makina ay nagsimulang paikutin ang counterclockwise, pagkatapos ang lahat ay konektado nang tama at kapag nag-aalok ng isang balakid, magsisimula silang paikutin sa ibang paraan:
Ito ay nananatili lamang upang subukan ito sa "patlang"
Subukan at bumuo ng video:
Salamat sa lahat para sa iyong pansin!