Kazalo:

Otto Bot (poimenoval sem mojo konico): 5 korakov
Otto Bot (poimenoval sem mojo konico): 5 korakov

Video: Otto Bot (poimenoval sem mojo konico): 5 korakov

Video: Otto Bot (poimenoval sem mojo konico): 5 korakov
Video: Long Distance Carp Fishing Masterclass | Darrell Peck & Terry Edmonds 2024, November
Anonim
Otto Bot (Jaz sem poimenoval Mine Spike)
Otto Bot (Jaz sem poimenoval Mine Spike)
Otto Bot (Jaz sem poimenoval Mine Spike)
Otto Bot (Jaz sem poimenoval Mine Spike)

To je preprost projekt, ki ga lahko naredi skoraj vsak, da ustvari preprostega hojo.

Zaloge:

Za to posebno gradnjo boste potrebovali:

*Ultrazvočni senzor

*1 3d tiskana omarica

*4 servomotorji

*Arduino nano plošča

*zvočnik

*9v baterija

*9v baterija

*8 ženskih žic

* USB mini b kabel

*prenosna baterija

*okraski

*napolnjena pištola za vroče lepilo

*spajkalnik

*4 majhni vijaki

*izvijač

*električni trak

*4 majhne podložke

1. korak: Nastavitev/gradnja

Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja
Postavitev/gradnja

Za začetek morate komplet najprej kupiti na:

Nato sledite korakom na:

Morda boste morali ohišje spremeniti, da boste popravili svoje dele, zato sem uporabil spajkalnik

2. korak: Urejanje in pritrditev žic

Urejanje in popravljanje žic
Urejanje in popravljanje žic
Urejanje in popravljanje žic
Urejanje in popravljanje žic

Čeprav vam tega ni treba okrasiti, kar dodaja sicer olajšano ohišje in botu dodate dodatne dimenzije, se prepričajte, da uravnovesite težo, da bo robot uravnotežen.

če prekinete žice, lahko oba sklopa zvijete skupaj in zapečatite, tako da lahko tok teče skozi.

9v baterija ali celo 4 dvojne baterije morda ne bosta dovolj, zato sem se odločil za prenosno baterijo neposredno za priključitev na ploščo

Za večji oprijem sem na dno nog dodal še škotski trak

upravljanje kablov bo težavno, zato priporočam, da z električnim trakom zatesnite sklope žic, ki se med seboj povežejo, zvočnik in gumb pa postavite navzven, nato pa zapečatite, da se bot, ko je vse na svojem mestu, dovolj, da ostane na svojem mestu, še posebej, če ohišje ni povsem strukturno trdno

3. korak: Naložite kodo

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Otto_avoid skica vzorca // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-Otto DIY PLUS APP Vdelana programska oprema 9 (V9) //-Otto DIY vlaga čas in vire v zagotavljanje odprtokodne kode in strojne opreme, podprite z nakupom kompletov na (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-Če želite uporabljati to programsko opremo v okviru odprtokodnega licenciranja, morate prispevati vso svojo izvorno kodo v skupnost in vse zgornje besedilo mora biti vključeno v kakršno koli prerazporeditev //-v skladu z različico GPL 2 ko bo vaša aplikacija razdeljena. Glej https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-Otto knjižnica različica 9 Otto9 Otto; // To je Otto!

//---------------------------------------------------------

//-Prvi korak: Konfigurirajte zatiče, kjer so priključeni servomotorji /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | */// PIN -kode SERVO ////////////////////////////////////////////// ////////////////////////////////////// #define PIN_YL 2 // servo [0] leva noga #define PIN_YR 3 // servo [1] desna noga #define PIN_RL 4 // servo [2] leva noga #define PIN_RR 5 // servo [3] desna noga // ULTRASONIC PINs //////////////// //////////////////////////////////////////////////////// ///////// #define PIN_Trigger 8 // TRIGGER pin (8) #define PIN_Echo 9 // ECHO pin (9) // BUZZER PIN ///////////////// //////////////////////////////////////////////////////// /////////////// #define PIN_Buzzer 13 // BUZZER pin (13) // SERVO ASSEMBLY PIN ////////////////////// ////////////////////////////////////////////////////// // // za pomoč pri sestavi Ottovih stopal in nog - žična povezava med zatičem 7 in GND #define PIN_ASSEMBLY 7 // SESTAVA zatič (7) LOW = montaža HIGH = normalno delovanje ///////////////// //////////////////////////////////////////////////////// //-Globalne spremenljivke -------------------------------------------/ //////////////////////////////////////////////////////// //////////////////// int razdalja; // spremenljivka za shranjevanje razdalje, odčitane iz modula ultrazvočnega daljinomera bool preprekaDetected = false; // logično stanje, ko je zaznani predmet na razdalji, ki smo jo nastavili //////////////////////////////////// /////////////////////////////// //-- Nastaviti -------------- ---------------------------------------- // //////// //////////////////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Nastavite servo zatiče in ultrazvočne zatiče ter pinMode za buzzer pin (PIN_ASSEMBLY, INPUT_PULLUP); // - Enostaven montažni zatič - LOW je način montaže // Otto se zbudi! Otto.sing (S_connection); // Otto oddaja zvok Otto.home (); // Otto se premakne na zakasnitev pripravljenosti (500); // počakajte 500 milisekund, da se Otto ustavi // če je pin 7 nizek, postavite servomotorje OTTO v domači način, da omogočite enostavno sestavljanje, // ko končate sestavljanje Otto, odstranite povezavo med zatičem 7 in GND, medtem ko (digitalRead (PIN_ASSEMBLY) == NIZKA) {Otto.home (); // Otto se premakne v pripravljen položaj Otto.sing (S_happy_short); // pojemo vsakih 5 sekund, da vemo, da OTTO še vedno dela zamudo (5000); // počakajte 5 sekund}

}

//////////////////////////////////////////////////////// /////////////////// //-glavna zanka --------------------------- ------------------ // //////////////////////////////// //////////////////////////////////////// void loop () {if (oviraDetected) {// if če je predmet bližje kot 15 cm, naredimo naslednje Otto.sing (S_surprise); // zvok presenečenja Otto.jump (5, 500); // Otto skoči Otto.sing (S_cuddly); // zvok a // Otto naredi tri korake nazaj za (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // trikrat ponovimo zakasnitev ukaza za sprehod nazaj (500); // majhna 1/2 sekundna zamuda, da se Otto lahko usede // Otto zavije levo 3 korake za (int i = 0; i <3; i ++) {// trikrat ponovite Otto.turn (1, 1000, 1); // zakasnitev ukaza za hojo levo (500); // majhna 1/2 sekundna zamuda, da se Otto poravna}} else {// če nič spredaj, potem pojdite naprej Otto.walk (1, 1000, 1); // Otto hoja naravnost preprekaDetector (); // pokličemo funkcijo za preverjanje ultrazvočnega daljinomera za objekt, ki je bližje od 15 cm}} ///////////////////////////////// ////////////////////////////////////////--Funkcije --------- ----------------------------------------- // /////// //////////////////////////////////////////////////////// /////////

/- Funkcija za branje senzorja razdalje & za aktiviranje ovire Zaznana spremenljivka

void preprekaDetector () {int distance = Otto.getDistance (); // dobimo razdaljo od ultrazvočnega daljinomera, če (razdalja <15) preprekaDetected = true; // preverite, če je ta razdalja bližja od 15 cm, res, če je drugače preprekaDetected = false; // napačno, če ni

}

4. korak: potrebne knjižnice

Potrebne knjižnice
Potrebne knjižnice

Ko so vaše knjižnice izvzete, boste morali iti v Arduino IDE in se prepričati, da so vaši zagonski nalagalniki posodobljeni.

Ploščo nastavite na Arduino Nano, procesor na ATmega328P (stari zagonski nalagalnik), COM pa na vrata, v katera ste priključili robota. Ko je ta korak končan in koda pripravljena, pritisnite gumb za nalaganje v zgornjem levem kotu programa, da kodo naložite v svojega robota.

Čeprav lahko najdete skoraj vse kode in knjižnične komplete, ne bodo vsi delovali, kar je lahko večerja frustrirajoča.

5. korak: Poimenujte, uživajte in opazujte premikanje

če gre vse po načrtu in tabla ni ocvrta, bi morali imeti bot, ki bi lahko programiral petje, ples, gibanje in izogibanje oviram.

Čeprav bi ga lahko imenovali samo Otto, se mi zdi, da je poimenovanje zase nekoliko bolj zanimivo, zato sem svojega poimenoval Spike.

Priporočena: