Sadržaj:
- Korak 1: Šta vam je potrebno u ovom projektu:
- Korak 2: Dijagram kola
- Korak 3: Programiranje Arduino UNO -a
- Korak 4: Odlično
Video: Kako napraviti robota za izbjegavanje prepreka od Arduina kod kuće: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Zdravo momci, u ovom Instructableu ćete napraviti prepreku izbjegavajući robota. Ovaj Instructable uključuje izgradnju robota s ultrazvučnim senzorom koji može otkriti obližnje objekte i promijeniti njihov smjer kako bi izbjegao te objekte. Ultrazvučni senzor bit će pričvršćen na servo motor koji stalno skenira lijevo i desno tražeći predmete na svom putu.
Dakle, bez daljnjih zalogaja, počnimo!
Korak 1: Šta vam je potrebno u ovom projektu:
Evo liste dijelova:
1) Arduino Uno
2) Štit vozača motora
3) Motor zupčanika, okvir i kotači
4) Servo motor
5) Ultrazvučni senzor
6) Li-ion baterija (2x)
7) Držač baterije
8) Muška i ženska kratkospojna žica
9) Lemilica
10) Punjač
Korak 2: Dijagram kola
Rad:
Prije nego što počnete raditi na projektu, važno je razumjeti kako funkcionira ultrazvučni senzor. Osnovni princip rada ultrazvučnog senzora je sljedeći:
Koristeći vanjski signal okidača, okidač na ultrazvučnom senzoru postaje logički visok najmanje 10µs. Šalje se zvučni signal iz odašiljačkog modula. Sastoji se od 8 impulsa od 40KHz.
Signali se vraćaju natrag nakon udarca u površinu i prijemnik detektira ovaj signal. Echo pin je visok od trenutka slanja signala i prijema. Ovo vrijeme se može pretvoriti u udaljenost pomoću odgovarajućih proračuna.
Cilj ovog projekta je implementirati robota koji izbjegava prepreke pomoću ultrazvučnog senzora i Arduina. Svi priključci su izvedeni prema shemi kola. U nastavku se objašnjava rad projekta.
Kada je robot uključen, oba motora robota će raditi normalno i robot će se kretati naprijed. Za to vrijeme ultrazvučni senzor kontinuirano izračunava udaljenost između robota i reflektirajuće površine.
Ove podatke obrađuje Arduino. Ako je udaljenost između robota i prepreke manja od 15 cm, Robot se zaustavlja i skenira u lijevom i desnom smjeru za novu udaljenost pomoću Servo motora i ultrazvučnog senzora. Ako je udaljenost prema lijevoj strani veća od udaljenosti desne strane, robot će se pripremiti za skretanje ulijevo. Ali prvo se malo sigurnosno kopira, a zatim aktivira motor lijevog kotača u obrnutom smjeru.
Slično, ako je desna udaljenost veća od udaljenosti lijeve udaljenosti, Robot priprema rotaciju udesno. Ovaj proces se nastavlja zauvijek, a robot se nastavlja kretati bez udarca u bilo koju prepreku.
Korak 3: Programiranje Arduino UNO -a
#include
#include
#include
# definirajte TRIG_PIN A1
# definirajte ECHO_PIN A0
# definirajte MAX_DISTANCE 200
# define MAX_SPEED 255 // postavlja brzinu istosmjernih motora
# define MAX_SPEED_OFFSET 20
NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motora3 (3, MOTOR34_1KHZ);
AF_DCMotorni motor4 (4, MOTOR34_1KHZ); Servo myservo;
boolean goesForward = false;
int udaljenost = 100; int speedSet = 0;
void setup () {
myservo.attach (10);
myservo.write (115); kašnjenje (2000); distance = readPing (); kašnjenje (100); distance = readPing (); kašnjenje (100); distance = readPing (); kašnjenje (100); distance = readPing (); kašnjenje (100); }
void loop () {{100} {101}
int udaljenostR = 0; int udaljenostL = 0; kašnjenje (40);
if (udaljenost <= 15) {moveStop (); kašnjenje (100); moveBackward (); kašnjenje (300); moveStop (); kašnjenje (200); distanceR = lookRight (); kašnjenje (200); distanceL = lookLeft (); kašnjenje (200);
if (distanceR> = distanceL) {
turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } distance = readPing (); }
int lookRight () {
myservo.write (50); kašnjenje (500); int udaljenost = readPing (); kašnjenje (100); myservo.write (115); povratna udaljenost; }
int lookLeft () {
myservo.write (170); kašnjenje (500); int udaljenost = readPing (); kašnjenje (100); myservo.write (115); povratna udaljenost; kašnjenje (100); }
int readPing () {
kašnjenje (70); int cm = sonar.ping_cm (); ako (cm == 0) {cm = 250; } return cm; }
void moveStop () {
motor3.run (RELEASE);
motor4.run (RELEASE); }
void moveForward () {
if (! ide naprijed) {
goesForward = true;
motor3.run (NAPRIJED);
motor4.run (NAPRIJED); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // polako povećavajte brzinu kako biste izbjegli prebrzo punjenje baterija {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); kašnjenje (5); }}}
void moveBackward () {
goesForward = false;
motor3.run (NAZAD);
motor4.run (NAZAD); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // polako povećavajte brzinu kako biste izbjegli prebrzo punjenje baterija {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); kašnjenje (5); }}
void turnRight () {
motor3.run (NAPRIJED);
motor4.run (NAZAD); kašnjenje (500);
motor3.run (NAPRIJED);
motor4.run (NAPRIJED); }
void turnLeft () {
motor3.run (NAZAD);
motor4.run (NAPRIJED); kašnjenje (500);
motor3.run (NAPRIJED);
motor4.run (NAPRIJED); }
1) Preuzmite i instalirajte Arduino Desktop IDE
- windows -
- Mac OS X -
- Linux -
2) Preuzmite i zalijepite datoteku biblioteke NewPing (biblioteka funkcija ultrazvučnog senzora) u mapu Arduino biblioteke.
- Preuzmite NewPing.rar ispod
- Raspakujte ga na putanju - C: / Arduino / libraries
3) Prenesite kôd na Arduino ploču putem USB kabela
Preuzmite kôd:
Korak 4: Odlično
Sada je vaš robot spreman da izbjegne svaku prepreku …
Rado ću odgovoriti na svako vaše pitanje
Emailme: [email protected]
Web stranica:
Pretplatite se na moj YouTube kanal:
Instagram:
Facebook:
Hvala ti:)
Preporučuje se:
Kako napraviti opružni senzor vibracija kod kuće!: 5 koraka (sa slikama)
Kako napraviti senzor vibracija opruge kod kuće !: Radio sam na novom projektu koji uključuje senzor vibracije opruge poznat i kao "siromašni čovjek" akcelerometar/senzor pokreta! Ovi prekidači s opružnim vibracijama su prekidači visoke osjetljivosti koji nisu usmjereni vibracijama uzrokovani vibracijama. Unutra je
Kako napraviti domaćeg robota za kontrolu pokreta Arduino kod kuće: 4 koraka
Kako napraviti DIY Arduino robota za kontrolu pokreta kod kuće: Kako napraviti DIY Arduino robota za kontrolu pokreta kod kuće. U ovom projektu pokazat ću vam kako napraviti DIY Arduino robota za kontrolu pokreta
Kako napraviti Rc avion kod kuće ispod 60 USD: 4 koraka
Kako napraviti RC avion kod kuće ispod 60 USD: Danas ću vam pokazati kako izgraditi RC avion ispod 60 USD. Za razumijevanje možete pogledati moj video na youtube -u. U videu sam rekao cijenu u indijskim rupijama jer želim ciljati indijsku publiku. Ako vam se sviđa moj video, pretplatite se na moj kanal za budućnost
Kako vrlo jednostavno napraviti kućni ventilator kod kuće: 3 koraka
Kako vrlo jednostavno napraviti kućni ventilator kod kuće: U ovom videu sam vrlo jednostavno napravio ventilator pomoću kućanskih potrepština
Kako koristiti IC senzor za izbjegavanje prepreka na Arduinu: 4 koraka
Kako koristiti IC osjetnik za izbjegavanje prepreka na Arduinu: Zdravo, svi, U ovom članku ću napisati kako se koristi IR osjetnik za izbjegavanje okolnosti na Arduinu. Potrebne komponente: Senzor za izbjegavanje IC prepreka Arduino Nano V.3 Žica za preskakanje USBminiPotreban je softver: Arduino IDE