Obsah:
- Krok 1: Čierna skrinka
- Krok 2: Arduino
- Krok 3: Pripojenie Arduina k Blackboxu
- Krok 4: Ultrazvukový senzor
- Krok 5: Breadboard pripojenie senzora k Arduinu
- Krok 6: Motorový štít
- Krok 7: Pripojenie štítu motora k Arduinu
- Krok 8: Pripojenie 4 motorov a batérií k štítu
- Krok 9: Naprogramujte robota
Video: Robotickému autu sa vyhýbajte prekážkam: 9 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Ako postaviť robot, ktorý sa vyhýba prekážke
Krok 1: Čierna skrinka
v prvom kroku som ako základ svojho robota použil čiernu skrinku.
Krok 2: Arduino
Arduino je mozgom celého systému a organizuje naše motory
Krok 3: Pripojenie Arduina k Blackboxu
Arduino som pripevnil na blackbox pomocou horúceho lepidla
Krok 4: Ultrazvukový senzor
Na to, aby sme robota, ktorý sa dokáže sám pohybovať, potrebujeme nejaký vstup, senzor, ktorý vyhovuje nášmu cieľu. Ultrazvukový senzor je nástroj, ktorý meria vzdialenosť k objektu pomocou ultrazvukových zvukových vĺn. Ultrazvukový senzor používa prevodník na odosielanie a príjem ultrazvukových impulzov, ktoré prenášajú späť informácie o blízkosti objektu
Krok 5: Breadboard pripojenie senzora k Arduinu
Na prepojenie medzi doskou a arduinom som použil drôty.
Dávajte pozor, aby váš snímač ping mal iné rozloženie pinov, ale mal by mať napäťový pin, uzemňovací kolík, spúšťací kolík a echo kolík.
Krok 6: Motorový štít
Dosky Arduino nedokážu ovládať jednosmerné motory samy, pretože prúdy, ktoré generujú, sú príliš nízke. Na vyriešenie tohto problému používame štíty motora. Štít motora má 2 kanály, čo umožňuje ovládanie dvoch jednosmerných motorov alebo 1 krokový motor. … Adresovaním týchto pinov môžete vybrať kanál motora, ktorý chcete spustiť, určiť smer motora (polaritu), nastaviť otáčky motora (PWM), zastaviť a naštartovať motor a monitorovať prúdovú absorpciu každého kanála
Krok 7: Pripojenie štítu motora k Arduinu
Jednoducho pripevnite štít motora na arduino pomocou zvlnených vodičov snímača
Krok 8: Pripojenie 4 motorov a batérií k štítu
Každý štít motora má (najmenej) dva kanály, jeden pre motory a jeden pre zdroj energie, prepojte ich navzájom
Krok 9: Naprogramujte robota
spustite tento kód
#include #include
NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DC Motor motora1 (1, MOTOR12_1KHZ); AF_DC Motor motora2 (2, MOTOR12_1KHZ); AF_DC Motor motora3 (3, MOTOR34_1KHZ); AF_DC Motor 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; vnútorná vzdialenosť = 80; int speedSet = 0;
neplatné nastavenie () {
myservo.attach (10); myservo.write (115); oneskorenie (2000); vzdialenosť = readPing (); oneskorenie (100); vzdialenosť = readPing (); oneskorenie (100); vzdialenosť = readPing (); oneskorenie (100); vzdialenosť = readPing (); oneskorenie (100); }
prázdna slučka () {int vzdialenosťR = 0; int vzdialenosťL = 0; oneskorenie (40); if (vzdialenosť <= 15) {moveStop (); oneskorenie (50); moveBackward (); oneskorenie (150); moveStop (); oneskorenie (100); vzdialenosťR = lookRight (); oneskorenie (100); vzdialenosťL = lookLeft (); oneskorenie (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } vzdialenosť = readPing (); }
int lookRight () {myservo.write (50); oneskorenie (250); int vzdialenosť = readPing (); oneskorenie (50); myservo.write (100); vzdialenosť návratu; }
int lookLeft () {myservo.write (120); oneskorenie (300); int vzdialenosť = readPing (); oneskorenie (100); myservo.write (115); vzdialenosť návratu; oneskorenie (100); }
int readPing () {oneskorenie (70); int cm = sonar.ping_cm (); ak (cm == 0) {cm = 200; } vrátiť cm; }
void moveStop () {motor1.run (RELEASE); motor2.run (UVOĽNENIE); motor3.run (UVOĽNENIE); motor4.run (UVOĽNENIE); } void moveForward () {
if (! goesForward) {goesForward = true; motor1.run (Vpred); motor2.run (Vpred); motor3.run (Vpred); motor4.run (Vpred); pre (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); oneskorenie (5); }}}
void moveBackward () {goesForward = false; motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (BACKWARD); motor4.run (BACKWARD); pre (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); oneskorenie (5); } void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (Vpred); motor4.run (Vpred); oneskorenie (500); motor1.run (Vpred); motor2.run (Vpred); motor3.run (Vpred); motor4.run (Vpred); }
void turnLeft () {motor1.run (BACKWARD); motor2.run (BACKWARD); motor3.run (Vpred); motor4.run (Vpred); oneskorenie (500); motor1.run (Vpred); motor2.run (Vpred); motor3.run (Vpred); motor4.run (Vpred); }
Odporúča:
Robot na vyhýbanie sa prekážkam pomocou ultrazvukového senzora (Proteus): 12 krokov
Robot na vyhýbanie sa prekážkam pomocou ultrazvukového senzora (Proteus): S robotom na vyhýbanie sa prekážkam sa spravidla stretávame všade. Hardvérová simulácia tohto robota je súčasťou súťaže na mnohých vysokých školách a na mnohých podujatiach. Softvérová simulácia prekážkového robota je však zriedkavá. Aj keď to niekde nájdeme,
Počítadlo Arduino pomocou LED displeja TM1637 a senzora vyhýbania sa prekážkam: 7 krokov
Počítadlo Arduino pomocou LED displeja TM1637 a senzora vyhýbania sa prekážkam: V tomto návode sa naučíme, ako vytvoriť jednoduché číselné počítadlo pomocou LED displeja TM1637 a senzora vyhýbania sa prekážkam a Visuino. Pozrite si video
Pádlovej lodi s Arudinom, ktorá sa vyhýba prekážkam: 9 krokov
Pádlo s prekážkami, ktoré sa vyhýbajú prekážkam s Arudinom: Ahoj priatelia, v tomto návode vám ukážem, ako vyrobiť pádlo s prekážkou, ktoré sa vyhýba prekážkam. Na tento nápad som prišiel, keď som relaxoval pri svojom rybníku a premýšľal nad nápadom na plastovú výzvu. Uvedomil som si, že plast tu bude veľmi
Robot Arduino 5 v 1 - Nasledujte ma - Nasledujúci riadok - Sumo - Kresba - Vyhýbanie sa prekážkam: 6 krokov
Robot Arduino 5 v 1 | Nasledujte ma | Nasledujúci riadok | Sumo | Kresba | Vyhýbanie sa prekážkam: Táto riadiaca doska robota obsahuje mikrokontrolér ATmega328P a ovládač motora L293D. Samozrejme, nelíši sa od dosky Arduino Uno, ale je užitočnejší, pretože na pohon motora nepotrebuje ďalší štít! Je bez skoku
DIY Arduino Prekážka vyhýbaniu sa autu doma: 5 krokov
DIY Arduino Prekážka vyhýbajúca sa autu doma: V tomto článku vám ukážem, ako si vyrobiť auto, ktoré sa vyhýba prekážke Arduino doma