Sadržaj:

Otto DIY klasa Finale: 4 koraka
Otto DIY klasa Finale: 4 koraka

Video: Otto DIY klasa Finale: 4 koraka

Video: Otto DIY klasa Finale: 4 koraka
Video: Черепаха Отто часть 1/Turtle Otto. Part 1 2024, Juli
Anonim
Otto DIY Class Final
Otto DIY Class Final

Ovaj projekat omogućili su Otto i Athens Technical College.

Za početak morate prvo kupiti komplet na:

Zatim slijedite korake na:

Korak 1: Prvi korak: Sastavite robota prema uputama

Prvi korak: Sastavite robota prema uputama
Prvi korak: Sastavite robota prema uputama
Prvi korak: Sastavite robota prema uputama
Prvi korak: Sastavite robota prema uputama

wikifactory.com/+OttoDIY/otto-diy

Na ovoj web stranici ćete pronaći upute za montažu i kod za vašeg Otto robota.

Kao što vidite, miješao sam i usklađivao različite dijelove i boje i koristio prijenosni blok za punjenje umjesto preporučenih 4 AA baterije.

Moj zvučnik je montiran na prednjoj strani radi lakšeg slušanja, a mač je pričvršćen na desnoj strani radi ukrašavanja.

Korak 2: Drugi korak: Plug and Code

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

Nakon što je vaš robot sastavljen, učitajte Arduino IDE na računalo i priključite robota.

U ovom trenutku trebali biste preuzeti datoteke Ottoa. Izvezite ih izravno u mapu Arduino biblioteka.

Ovo će vam omogućiti da koristite kôd koji vam je Otto dao.

Korak 3: Treći korak: Završite kodiranje

Treći korak: Završite kodiranje
Treći korak: Završite kodiranje

Nakon što su vaše biblioteke izdvojene, morat ćete otići u Arduino IDE i provjeriti jesu li vaši pokretači za preuzimanje ažurni.

Postavite svoju ploču na Arduino Nano, vaš procesor na ATmega328P (stari pokretač za pokretanje), a COM na bilo koji port na koji ste priključili robota.

Kada ovaj korak obavite i vaš kôd bude spreman, pritisnite dugme za otpremanje u gornjem lijevom kutu programa da biste učitali kôd na svog robota.

Korak 4: Četvrti korak: Gledajte

Gledajte bolesne poteze vašeg robota i drogirani glas koji pjeva.

Ovisno o kodu koji ste koristili, možete natjerati svog robota da pjeva, pleše ili izbjegava prepreke.

Ovaj projekat je napisan sa kodom za izbjegavanje:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Otto_avoid skice uzorka // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-Otto DIY PLUS APP Verzija firmvera 9 (V9) //-Otto DIY ulaže vrijeme i resurse u pružanje otvorenog koda i hardvera, molimo vas da podržite kupovinom kompleta na (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-Ako želite koristiti ovaj softver pod licenciranjem otvorenog koda, morate unijeti sav svoj izvorni kôd u zajednicu, a sav gornji tekst mora biti uključen u bilo kakvu preraspodjelu //-u skladu s GPL verzijom 2 kada se vaša aplikacija distribuira. Pogledajte https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-Otto biblioteka verzija 9 Otto9 Otto; // Ovo je Otto!

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

//-Prvi korak: Konfigurirajte pinove na kojima su priključeni servo upravljači /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | */// SERVO PIN -ovi ////////////////////////////////////////////// ////////////////////////////////////// #define PIN_YL 2 // servo [0] lijeva noga #define PIN_YR 3 // servo [1] desna noga #define PIN_RL 4 // servo [2] lijeva noga #define PIN_RR 5 // servo [3] desna noga // ULTRASONIC PIN -ovi //////////////// ////////////////////////////////////////////////////////// ///////// #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 sastavljanju Ottovih stopala i nogu - žičana veza između pina 7 i GND #define PIN_ASSEMBLY 7 // MONTAŽA pin (7) LOW = sklop HIGH = normalan rad ///////////////// ////////////////////////////////////////////////////////// //-Globalne varijable -------------------------------------------/ //////////////////////////////////////////////////////// //////////////////// int udaljenost; // varijabla za spremanje udaljenosti očitana iz modula ultrazvučnog daljinomera bool preprekaDetected = false; // logičko stanje kada je otkriveni objekt na udaljenosti koju smo postavili ////////////////////////////////////// /////////////////////////////// //-- Postaviti -------------- ---------------------------------------- // ////////// ////////////////////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Podesite servo pinove i ultrazvučne pinove i pinMode zujalice (PIN_ASSEMBLY, INPUT_PULLUP); // - Laka montažna pina - LOW je način montaže // Otto probudi se! Otto.sing (S_connection); // Otto stvara zvuk Otto.home (); // Otto prelazi na odgodu spremne pozicije (500); // pričekajte 500 milisekundi da se Otto zaustavi // ako je Pin 7 LOW, postavite OTTO -ove servosisteme u početni način rada kako biste omogućili laku montažu, // kada završite sa sastavljanjem Otto -a, uklonite vezu između pina 7 i GND dok (digitalRead (PIN_ASSEMBLY) == LOW) {Otto.home (); // Otto se pomiče na svoju spremnu poziciju Otto.sing (S_happy_short); // pjevamo svakih 5 sekundi kako bismo znali da OTTO još uvijek radi odgoda (5000); // pričekajte 5 sekundi}

}

////////////////////////////////////////////////////////// /////////////////// //-Glavna petlja --------------------------- ------------------ // //////////////////////////////// ///////////////////////////////////////// void loop () {if (preprekaDetected) {// if postoji objekt bliži od 15 cm, tada radimo sljedeće Otto.sing (S_surprise); // zvuči iznenađujuće Otto.jump (5, 500); // Otto skoči Otto.sing (S_cuddly); // zvuk a // Otto se povlači tri koraka unatrag za (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // ponoviti tri puta kašnjenje naredbe hoda nazad (500); // malo kašnjenje od 1/2 sekunde kako bi se Otto smirio // Otto skreće ulijevo 3 koraka za (int i = 0; i <3; i ++) {// ponoviti tri puta Otto.turn (1, 1000, 1); // kašnjenje naredbe hodanja lijevo (500); // malo kašnjenje od 1/2 sekunde kako bi Otto mogao smjestiti}} else {// ako nema ništa ispred, onda hodajte naprijed Otto.walk (1, 1000, 1); // Otto hoda ravno preprekaDetector (); // pozovite funkciju da provjerite ultrazvučni daljinomer za objekt bliži od 15 cm}} ///////////////////////////////// //////////////////////////////////////// //-Funkcije --------- ----------------------------------------- // /////// ////////////////////////////////////////////////////////// /////////

/- Funkcija za očitavanje senzora udaljenosti i za aktiviranje varijable Prepoznata prepreka

void preprekaDetector () {int udaljenost = Otto.getDistance (); // dobivamo udaljenost od ultrazvučnog daljinomera ako (udaljenost <15) preprekaDetected = true; // provjeravamo je li ova udaljenost bliža od 15 cm, istinito ako je inače preprekaDetected = false; // netačno ako nije}

Preporučuje se: