
Sadržaj:
- Korak 1: Crna kutija
- Korak 2: Arduino
- Korak 3: Priključivanje Arduina na Blackbox
- Korak 4: Ultrazvučni senzor
- Korak 5: Spajanje senzora na matičnu ploču s Arduinom
- Korak 6: Štit motora
- Korak 7: Povezivanje štita motora s Arduinom
- Korak 8: Spajanje 4 motora i baterija na štit
- Korak 9: Programirajte robota
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47


Kako izgraditi robota koji izbjegava prepreke
Korak 1: Crna kutija

prvi korak sam koristio crnu kutiju kao bazu za svog robota.
Korak 2: Arduino

Arduino je mozak cijelog sustava i orkestrira naše motore
Korak 3: Priključivanje Arduina na Blackbox

Spojio sam arduino na crnu kutiju vrućim ljepilom
Korak 4: Ultrazvučni senzor

Da bismo napravili robota koji se može sam kretati, potrebna nam je neka vrsta ulaza, senzora koji odgovara našem cilju. Ultrazvučni senzor je instrument koji mjeri udaljenost do objekta pomoću ultrazvučnih zvučnih valova. Ultrazvučni senzor koristi pretvarač za slanje i primanje ultrazvučnih impulsa koji prenose povratne informacije o blizini objekta
Korak 5: Spajanje senzora na matičnu ploču s Arduinom


Koristio sam žice za povezivanje veze između matične ploče i arduina.
Obratite pažnju da vaš ping senzor može imati drugačiji raspored pinova, ali bi trebao imati naponski pin, pin za uzemljenje, okidač i echo pin.
Korak 6: Štit motora

Arduino ploče ne mogu same upravljati istosmjernim motorima, jer su struje koje generiraju preniske. Za rješavanje ovog problema koristimo štitnike motora. Štitnik motora ima 2 kanala, što omogućuje upravljanje s dva istosmjerna motora, ili 1 koračni motor. … Adresiranjem ovih pinova možete odabrati kanal motora za pokretanje, odrediti smjer motora (polaritet), postaviti brzinu motora (PWM), zaustaviti i pokrenuti motor i pratiti trenutnu apsorpciju svakog kanala
Korak 7: Povezivanje štita motora s Arduinom

Jednostavno pričvrstite štitnik motora na arduino sa zgužvanim žicama senzora
Korak 8: Spajanje 4 motora i baterija na štit

Svaki štit motora ima (najmanje) dva kanala, jedan za motore, a jedan za izvor napajanja, povežite ih međusobno
Korak 9: Programirajte robota
pokrenite ovaj kod
#include #include
Sonar NewPing (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motora1 (1, MOTOR12_1KHZ); AF_DCMotor motora2 (2, MOTOR12_1KHZ); AF_DCMotor motora3 (3, MOTOR34_1KHZ); AF_DCMotor motora4 (4, MOTOR34_1KHZ); Servo myservo;
#define TRIG_PIN A2 #define ECHO_PIN A3 #define MAX_DISTANCE 150 #define MAX_SPEED 100 #define MAX_SPEED_OFFSET 10
boolean goesForward = false; int udaljenost = 80; int speedSet = 0;
void setup () {
myservo.attach (10); myservo.write (115); odgoda (2000); udaljenost = readPing (); kašnjenje (100); udaljenost = readPing (); kašnjenje (100); udaljenost = readPing (); kašnjenje (100); udaljenost = readPing (); kašnjenje (100); }
void loop () {int distanceR = 0; int udaljenostL = 0; kašnjenje (40); if (udaljenost <= 15) {moveStop (); kašnjenje (50); moveBackward (); kašnjenje (150); moveStop (); kašnjenje (100); distanceR = lookRight (); kašnjenje (100); udaljenostL = lookLeft (); kašnjenje (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } udaljenost = readPing (); }
int lookRight () {myservo.write (50); kašnjenje (250); int udaljenost = readPing (); kašnjenje (50); myservo.write (100); povratna udaljenost; }
int lookLeft () {myservo.write (120); kašnjenje (300); int udaljenost = readPing (); kašnjenje (100); myservo.write (115); povratna udaljenost; kašnjenje (100); }
int readPing () {odgoda (70); int cm = sonar.ping_cm (); ako (cm == 0) {cm = 200; } return cm; }
void moveStop () {motor1.run (RELEASE); motor2.run (RELEASE); motor3.run (RELEASE); motor4.run (RELEASE); } void moveForward () {
if (! goesForward) {goesForward = true; motor1.run (NAPRIJED); motor2.run (NAPRIJED); motor3.run (NAPRIJED); motor4.run (NAPRIJED); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); kašnjenje (5); }}}
void moveBackward () {goesForward = false; motor1.run (NAZAD); motor2.run (NAZAD); motor3.run (NAZAD); motor4.run (NAZAD); for (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); kašnjenje (5); } void turnLeft () {motor1.run (NAZAD); motor2.run (NAZAD); motor3.run (NAPRIJED); motor4.run (NAPRIJED); kašnjenje (500); motor1.run (NAPRIJED); motor2.run (NAPRIJED); motor3.run (NAPRIJED); motor4.run (NAPRIJED); }
void turnLeft () {motor1.run (NAZAD); motor2.run (NAZAD); motor3.run (NAPRIJED); motor4.run (NAPRIJED); kašnjenje (500); motor1.run (NAPRIJED); motor2.run (NAPRIJED); motor3.run (NAPRIJED); motor4.run (NAPRIJED); }
Preporučeni:
LEGO robot koji izbjegava prepreke: 8 koraka (sa slikama)

LEGO Robot koji izbjegava prepreke: Volimo LEGO i volimo lude krugove pa smo htjeli spojiti to dvoje u jednostavnog i zabavnog robota koji može izbjeći nalet na zidove i druge predmete. Pokazat ćemo vam kako smo izgradili naše i opisati osnove potrebne kako biste mogli izgraditi vlastite
Robot koji izbjegava prepreke koristeći Arduino Nano: 5 koraka

Robot koji izbjegava prepreke koristeći Arduino Nano: U ovom uputstvu opisat ću kako možete napraviti robota koji izbjegava prepreke koristeći Arduino
Veslački brod s Arudinom koji izbjegava prepreke: 9 koraka

Veslački brod s Arudinom koji izbjegava prepreke: Bok prijatelji, u ovom ću vam vodiču pokazati kako napraviti veslački brod koji izbjegava prepreke. Na ovu sam ideju došao dok sam se odmarao u blizini svog ribnjaka i smišljao ideju za plastični izazov. Shvatio sam da će plastika ovdje biti vrlo
Robot koji izbjegava prepreke s IC senzorima bez mikrokontrolera: 6 koraka

Robot za izbjegavanje prepreka s IC senzorima bez mikrokontrolera: Pa ovaj projekt je stariji projekt, napravio sam ga 2014. godine u srpnju ili kolovozu, mislio sam ga podijeliti s vama. Njegova je jednostavna prepreka izbjegavanje robota koji koristi IC senzore i radi bez mikrokontrolera. IC senzori koriste opamp IC i
Arduino automobil koji izbjegava prepreke s motorom: 7 koraka

Arduino automobil koji izbjegava prepreke s motorom: Zdravo! i dobrodošli u vodič o tome kako izgraditi automobil za izbjegavanje prepreka Arduino. Možemo započeti tako da nabavimo potrebne materijale za ovaj projekt i svakako se zabavimo! MATERIJALI: Senzor udaljenosti žica za muške i muške žice