Sadržaj:

Arduino 3D štampani sumo bot: 6 koraka
Arduino 3D štampani sumo bot: 6 koraka

Video: Arduino 3D štampani sumo bot: 6 koraka

Video: Arduino 3D štampani sumo bot: 6 koraka
Video: Решил СДЕЛАТЬ себе ПОМОЩНИКА из картона!! Как сделать РОБОТА на радиоуправлении своими руками 2024, Novembar
Anonim
Arduino 3D štampani Sumo Bot
Arduino 3D štampani Sumo Bot

Tako da sam imao gomilu dijelova po kući. Želeo sam da učestvujem u sumo takmičenju koje će se pojaviti za nekoliko meseci, ali nisam imao bota. Umjesto kupovine robota ili korištenja postojećeg dizajna koji bi zahtijevao od mene da kupim stvari za projekt, krenuo sam naprijed i napravio vlastiti bot od vlastitog dizajna od vlastitih dijelova koje sam imao. Za ovo uputstvo trebat će vam sljedeće.

  1. Jedan od svakog 3D štampanog dijela koji se nalazi ovdje.
  2. Baterija od 7,4 V ili dvije baterije 18650.
  3. Držač baterije ako je potrebno.
  4. Arduino uno.
  5. Arduino uno zaštitni štit.
  6. USB kabel za Arduino.
  7. Napajanje sa radne površine (opcionalno).
  8. Punjač (opcionalno).
  9. Žice i puno njih.
  10. Servo pogoni sa metalnim zupčanikom standardne veličine.
  11. Dva senzora prekidača ir.
  12. Servo točkovi od 7 cm.
  13. Prekidač za uključivanje i isključivanje.

Ovaj kod se stalno mijenja. Kôd za ovog robota možete pronaći ovdje. Ovo je najnovija verzija ovog koda projekta. Uživajte!

Korak 1: Montaža

Montaža
Montaža
Montaža
Montaža
Montaža
Montaža
  1. Robot koristi dva servo pogona od metala. Morat ćete ih uviti pomoću vijaka i matica m3 sa servo motorima unutar šasije prema van u oba smjera. Postoji samo jedan način na koji servo upravljači mogu ući u robota, pa će to biti prilično ravno.
  2. Pričvrstite servo točkove.
  3. Pričvrstite ir senzore tako da budu okrenuti prema dolje u prednjem dijelu robota. Pričvršćuju se s dva vijka kroz rupe M3 na prednjoj strani robota. Na dnu robota nalaze se prorezi kroz koje mogu proviriti. Želite biti oprezni, senzori ne podižu šasiju i mogu vidjeti cijele proreze. O tome ćete kasnije saznati dok testiramo robota da vidimo je li vaš priručni rad uspio.
  4. Senzor HC-SR04 stavite u dvije rupe okrenute izvan robota iznutra. Rupe se nalaze na prednjoj strani šasije.
  5. Stavite Arduino Uno u šasiju sa štitom na sebi.
  6. Povežite sve zajedno prema dolje navedenoj listi metaka.

    1. Napajanje iz izvora napajanja po vašem izboru do prekidača za napajanje. Na prekidač ćete spojiti pozitivni ili negativni vod. Ako ste odabrali negativni vod, ovo će biti vaš temelj, a ako ste odabrali pozitivni vodič, to će biti vaš izvor napajanja. Druga žica, ovisno o tome je li pozitivna ili negativna, bit će vaša pozitivna ili negativna.
    2. Spojite pozitivni provod na vin na Arduinu, a pozitivne na servo upravljače.
    3. Spojite zemlju na masu na servo motorima i Arduinu.
    4. Spojite 5v iz 5 -voltnog regulatora na Arduinu na sve pozitivne priključke na svakom od senzora.
    5. Spojite senzore na masu na Arduinu.
    6. Na kraju povežite pin 7 na Arduino -desnom ir senzoru, pin 6 na lijevom IR senzoru, pin 8 na jednom od servo -a, pin 9 na posljednjem servo -u.

Upozorenje: Neispravno povezivanje robota može dovesti do pušenja robota i uništenja elektronike

Korak 2: Prvi znaci života

Upozorenje: Ne povezujte robota sa računarom dok je uključen ili sa servo pogonima. Ako to ne učinite, može doći do oštećenja računara

int način = 3;

Ova gornja linija koda ključna je varijabla za robota. Čini sljedeće ako je jednako svakom dolje navedenom broju.

  1. Dok je jednak nuli, robot se kreće po određenom obrascu.
  2. Ako je način rada jednak jedan, robot ispisuje na računaru izlaz svakog očitanja senzora.
  3. Kada je jednako dva, robot izbjegava rubove i prepreke ako naiđe na njih.
  4. Robot se bori s drugim botovima.

Ovo su različiti načini rada robota koji se koriste za testiranje i pomaganje robotu u napretku. Morat ćete promijeniti to "3" na nulu za prvi korak ovog vodiča.

Sada otpremite kôd na robota. Vidjet ćete kako se kreće naprijed, nazad, lijevo i desno tim redoslijedom.

Korak 3: Može vidjeti

int način = 0;

Promijenite sljedeću varijablu u "1" ako je prethodni korak dovršen. Sada kada je spojen na vaš serijski monitor na Arduinu, ispisat će ono što vaš robot vidi. "0" znači za rubne senzore da nešto vidi. "1" znači da ne vidi nikakve rubove. Ako primijetite da je logika obrnuta, imajte to na umu za buduće korake.

Ne brinite o senzoru pinga. To mi ionako još nije uspjelo. Ovaj robot je u intenzivnom razvoju.

Korak 4: Može izbjeći rub stola

void Izbjegavajte () {

int sensorStateLeft = digitalRead (leftSensor);

int sensorStateRight = digitalRead (desni senzor);

kašnjenje (50);

if (Ping.ping_cm ()> = 15 && sensorStateLeft == 0 && sensorStateRight == 0) {

left.write (0); right.write (90);

}

if (Ping.ping_cm () <= 15 && Ping.ping_cm ()! = 0 || sensorStateLeft == 1 || sensorStateRight == 1) {

left.write (90);

right.write (0); }

}

Ovaj gornji kôd je kôd koji se poziva kada je način rada jednak dva. Ako je prethodni korak završen, promijenite način rada na "2".

Ako su senzori obrnuti, slobodno invertirajte "sensorStateLeft" i "sensorStateRight" u svakom od "if" izraza jednak različitom broju od onog koji je dat ili "1" ili "0".

Sada robot može izbjeći rub sumo arene. Skoro je spreman za borbu. Slobodno ga isprobajte da vidite radi li ili ne.

Korak 5: BITKA

Vaš sumo je sada spreman za borbu s nekoliko promjena koda. Promijenite način rada na "3" i obrnite logiku prema potrebi u praznini "Sumo". Sada bi vaš robot trebao izbjegavati rub arene, ali ne može otkriti druge robote. U osnovi izbjegava rubove arene i kreće se dovoljno brzo da nadamo se može gurnuti robota s ruba stola. Uživajte!

Korak 6: Zaključak

Vaš robot je sada gotov. Ako imate bilo kakvih problema ili komentara za ovaj projekt, slobodno me obavijestite. Nevjerojatno sam otvoren za povratne informacije jer nemam pojma je li ovo bio dobro urađen vodič ili nije. Uživajte!

Preporučuje se: