Съдържание:

Otto DIY Class Финал: 4 стъпки
Otto DIY Class Финал: 4 стъпки

Видео: Otto DIY Class Финал: 4 стъпки

Видео: Otto DIY Class Финал: 4 стъпки
Видео: Not the reaction he was hoping for 🥴 2024, Ноември
Anonim
Otto DIY Class Финал
Otto DIY Class Финал

Този проект стана възможен от Ото и Атинския технически колеж.

За да започнете, първо трябва да закупите комплекта от:

След това следвайте стъпките на:

Стъпка 1: Първа стъпка: Сглобете робота от инструкциите

Първа стъпка: Сглобете робота от инструкциите
Първа стъпка: Сглобете робота от инструкциите
Първа стъпка: Сглобете робота от инструкциите
Първа стъпка: Сглобете робота от инструкциите

wikifactory.com/+OttoDIY/otto-diy

Този уебсайт е мястото, където ще намерите инструкции за сглобяване и код за вашия робот Otto.

Както можете да видите, аз смесих и съчетах различни части и цветове и използвах преносим блок за зареждане за захранване вместо препоръчителните 4 батерии AA.

Моят високоговорител е монтиран отпред за по -лесно чуване, а от дясната страна е прикрепен меч за декорация.

Стъпка 2: Стъпка втора: Plug and Code

Стъпка втора: Plug and Code
Стъпка втора: Plug and Code

След като вашият робот бъде сглобен, заредете Arduino IDE на компютъра си и включете робота си.

В този момент трябва да свалите файловете на Otto. Експортирайте ги директно във вашата папка с библиотеки на Arduino.

Това ще ви позволи да използвате кода, който ви е дал Ото.

Стъпка 3: Стъпка трета: Завършете кодирането

Стъпка трета: Завършете кодирането
Стъпка трета: Завършете кодирането

След като вашите библиотеки бъдат извлечени, ще трябва да влезете в Arduino IDE и да се уверите, че вашите зареждащи устройства са актуални.

Настройте дъската си на Arduino Nano, процесора ви на ATmega328P (стар буутлоудър) и вашия COM към кой порт, към който сте включили робота.

След като тази стъпка е направена и кодът ви е готов, натиснете бутона за качване в горния ляв ъгъл на програмата, за да качите кода във вашия робот.

Стъпка 4: Стъпка четвърта: Гледайте

Гледайте болните движения на вашия робот и пеещия глас на дрога.

В зависимост от кода, който сте използвали, можете да накарате робота си да пее, танцува или да избягва препятствията.

Този проект е написан с код за избягване:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Otto_avoid примерна скица // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-Версия на фърмуера на Otto DIY PLUS APP 9 (V9) //-Otto DIY инвестира време и ресурси, предоставяйки отворен код и хардуер, моля, подкрепете, като закупите комплекти от (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-Ако искате да използвате този софтуер под лицензиране с отворен код, трябва да допринесете целия си изходен код към общността и горният текст трябва да бъде включен във всяко преразпределение //-в съответствие с GPL версия 2 когато вашето приложение се разпространява. Вижте https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-Ото библиотека версия 9 Otto9 Otto; // Това е Ото!

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

//-Първа стъпка: Конфигурирайте щифтовете, където са прикрепени сервомоторите /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | */// SERVO ПИН кодове ////////////////////////////////////////////// ////////////////////////////////////// дефинирайте PIN_YL 2 // серво [0] ляв крак #дефинирайте PIN_YR 3 // серво [1] десен крак #определи PIN_RL 4 // серво [2] ляв крак #дефинирай PIN_RR 5 // серво [3] десен крак // ултразвукови ПИН кодове //////////////// //////////////////////////////////////////////////////// ///////// #дефинирайте PIN_Trigger 8 // TRIGGER щифт (8) #define PIN_Echo 9 // ECHO щифт (9) // ПИН ЗВУК ///////////////// //////////////////////////////////////////////////////// /////////////// #дефинирайте PIN_Buzzer 13 // ПИН за ЗВУК (13) // ПИН за СЕРВО СБОР /////////////////////// ////////////////////////////////////////////////////// // // за подпомагане на сглобяването на краката и краката на Ото - телена връзка между щифт 7 и GND #дефинирайте PIN_ASSEMBLY 7 // МОНТАЖ щифт (7) LOW = монтаж HIGH = нормална работа ///////////////// //////////////////////////////////////////////////////// //-Глобални променливи -------------------------------------------/ //////////////////////////////////////////////////////// //////////////////// int разстояние; // променлива за съхраняване на разчитане на разстояние от модула на ултразвуков далекомер bool preprecleDetected = false; // логическо състояние, когато откритият обект е на разстоянието, което задаваме ////////////////////////////////////// /////////////////////////////// //-- Настройвам -------------- ---------------------------------------- // ////////// //////////////////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Задайте серво щифтовете и ултразвуковите щифтове и пина на зумера pinMode (PIN_ASSEMBLY, INPUT_PULLUP); // - Лесен монтажен щифт - LOW е монтажен режим // Ото се събуди! Otto.sing (S_connection); // Ото издава звук Otto.home (); // Ото се придвижва до закъснението си в готова позиция (500); // изчакайте 500 милисекунди, за да позволите на Ото да спре // ако ПИН 7 е НИСКИ, поставете сервомоторите на OTTO в домашен режим, за да осигурите лесно сглобяване, // когато приключите сглобяването на Otto, премахнете връзката между щифт 7 и GND докато (digitalRead (PIN_ASSEMBLY) == LOW) {Otto.home (); // Ото се премества в готова позиция Otto.sing (S_happy_short); // пеем на всеки 5 секунди, за да знаем, че OTTO все още работи забавяне (5000); // изчакайте 5 секунди}

}

//////////////////////////////////////////////////////// /////////////////// //-Основен цикъл --------------------------- ------------------ // //////////////////////////////// ///////////////////////////////////////// void loop () {ако (открито препятствие) {// ако има обект по -близо от 15 см, тогава правим следното Otto.sing (S_surprise); // звучи изненадващо Otto.jump (5, 500); // Ото прескача Otto.sing (S_cuddly); // звук a // Ото прави три стъпки назад за (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // повтаряме три пъти забавянето на командата за връщане назад (500); // малко 1/2 секундно забавяне, за да позволи на Ото да се установи // Ото завива наляво 3 стъпки за (int i = 0; i <3; i ++) {// повторете три пъти Otto.turn (1, 1000, 1); // закъснението на командата за ляво ходене (500); // малко 1/2 секундно забавяне, за да позволи на Ото да се установи}} иначе {// ако няма нищо отпред, след това вървете напред Otto.walk (1, 1000, 1); // Ото ходи прав препятствиеDetector (); // извикваме функцията за проверка на ултразвуковия далекомер за обект, по -близък от 15 см}} ///////////////////////////////// //////////////////////////////////////// //-Функции --------- ----------------------------------------- // /////// //////////////////////////////////////////////////////// /////////

/- Функция за четене на сензора за разстояние и за актуализиране на препятствие Открита променлива

void preprecleDetector () {int distance = Otto.getDistance (); // получаваме разстоянието от ултразвуковия далекомер, ако (разстояние <15) preprecleDetected = true; // проверяваме дали това разстояние е по -близо от 15 см, вярно, ако е друго препятствиеDetected = false; // невярно, ако не е}

Препоръчано: