Kazalo:

Otto DIY razred, finale: 4 koraki
Otto DIY razred, finale: 4 koraki

Video: Otto DIY razred, finale: 4 koraki

Video: Otto DIY razred, finale: 4 koraki
Video: Приказ комиссара. Warhammer 40k 2024, November
Anonim
Otto DIY razred, finale
Otto DIY razred, finale

Ta projekt sta omogočila Otto in Athens Technical College.

Za začetek morate komplet najprej kupiti na:

Nato sledite korakom na:

1. korak: Prvi korak: sestavite robota iz navodil

Prvi korak: Sestavite robota iz navodil
Prvi korak: Sestavite robota iz navodil
Prvi korak: Sestavite robota iz navodil
Prvi korak: Sestavite robota iz navodil

wikifactory.com/+OttoDIY/otto-diy

Na tem spletnem mestu boste našli navodila za sestavljanje in kodo vašega robota Otto.

Kot lahko vidite, sem mešal in ujemal različne dele in barve ter za napajanje uporabil prenosni polnilni blok namesto priporočenih 4 baterij AA.

Moj zvočnik je nameščen na sprednji strani za lažje poslušanje, meč pa je pritrjen na desni strani za dekoracijo.

2. korak: Drugi korak: Plug and Code

Drugi korak: Plug and Code
Drugi korak: Plug and Code

Ko je vaš robot sestavljen, naložite Arduino IDE v računalnik in priključite robota.

Na tej točki bi morali datoteke Otto shraniti. Izvozite jih neposredno v mapo knjižnic Arduino.

Tako boste lahko uporabili kodo, ki vam jo je dal Otto.

3. korak: Tretji korak: Dokončajte kodiranje

Tretji korak: Dokončajte kodiranje
Tretji korak: Dokončajte kodiranje

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.

4. korak: Četrti korak: Oglejte si

Opazujte bolnikove poteze robota in zasvojen glas.

Odvisno od tega, kakšno kodo ste uporabili, lahko svojega robota prepevate, plešete ali se izognete oviram.

Ta projekt je bil napisan s kodo za izogibanje:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // 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}

Priporočena: