Mundarija:

Otto DIY Class Final: 4 qadam
Otto DIY Class Final: 4 qadam

Video: Otto DIY Class Final: 4 qadam

Video: Otto DIY Class Final: 4 qadam
Video: How to Make a Auto Rickshaw from Cardboard at home 2024, Iyul
Anonim
Otto DIY sinfining finali
Otto DIY sinfining finali

Bu loyiha Otto va Afina texnik kolleji tomonidan amalga oshirildi.

Boshlash uchun siz avval to'plamni sotib olishingiz kerak:

Keyin quyidagi amallarni bajaring:

1 -qadam: Birinchi qadam: Ko'rsatmalardan robotni yig'ish

Birinchi qadam: ko'rsatmalardan robotni yig'ish
Birinchi qadam: ko'rsatmalardan robotni yig'ish
Birinchi qadam: ko'rsatmalardan robotni yig'ish
Birinchi qadam: ko'rsatmalardan robotni yig'ish

wikifactory.com/+OttoDIY/otto-diy

Bu veb -saytda siz Otto robotingizning montaj ko'rsatmalari va kodini topasiz.

Ko'rib turganingizdek, men turli qismlar va ranglarni aralashtirdim va moslashtirdim va tavsiya etilgan 4 ta AA batareyasi o'rniga quvvat uchun portativ zaryadlovchi blokdan foydalandim.

Mening karnayim eshitish uchun old tomonga o'rnatilgan va bezatish uchun o'ng tomonga qilich taqilgan.

2 -qadam: Ikkinchi qadam: Plug va kod

Ikkinchi qadam: Plug va kod
Ikkinchi qadam: Plug va kod

Robotingiz yig'ilgandan so'ng, kompyuteringizga Arduino IDE -ni yuklang va robotni ulang.

Bu vaqtda siz Otto fayllarini pastga tushirishingiz kerak. Ularni to'g'ridan -to'g'ri Arduino kutubxonalari papkasiga eksport qiling.

Bu sizga Otto bergan koddan foydalanish imkonini beradi.

3 -qadam: Uchinchi qadam: Kodlashni tugating

Uchinchi qadam: kodlashni tugating
Uchinchi qadam: kodlashni tugating

Kutubxonalaringiz chiqarilgandan so'ng, siz Arduino IDE -ga kirishingiz va yuklovchilaringiz yangilanganligiga ishonch hosil qilishingiz kerak bo'ladi.

O'zingizning taxtangizni Arduino Nano -ga, protsessoringizni ATmega328P (Old Bootloader) va COM -ni robotni qaysi portga ulaganingizga qarab o'rnating.

Bu qadam tugagandan so'ng va sizning kodingiz tayyor bo'lgach, kodni robotingizga yuklash uchun dasturning yuqori chap burchagidagi yuklash tugmasini bosing.

4 -qadam: To'rtinchi qadam: tomosha qiling

Robotingizning kasal harakatlarini va qo'shiq ovozini tomosha qiling.

Qaysi kodni ishlatganingizga qarab, siz robotni qo'shiq aytishga, raqsga tushirishga yoki to'siqlardan qochishga majbur qilishingiz mumkin.

Ushbu loyiha qochish kodi bilan yozilgan:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Otto_avoid namunaviy eskiz // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-Otto DIY PLUS APP dasturiy ta'minotining 9-versiyasi (V9) //-Otto DIY ochiq manba kodli va apparat ta'minlovchi vaqt va resurslarni sarflaydi, iltimos, to'plamlarni sotib oling (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-Agar siz ushbu dasturiy ta'minotni Ochiq kodli litsenziyalash ostida ishlatmoqchi bo'lsangiz, siz barcha manba kodingizni hamjamiyatga qo'shishingiz kerak va yuqoridagi barcha matnlar GPL 2-versiyasiga muvofiq har qanday qayta taqsimotga kiritilishi kerak //- sizning arizangiz tarqatilganda. Qarang: https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------- #include //-Otto kutubxonasining 9-versiyasi Otto9 Otto; // Bu Otto!

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

//-Birinchi qadam: Servo biriktirilgan pimlarni sozlang /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | *// // SERVO PIN -kodlari // ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // servo [1] o'ng oyoq #aniq PIN_RL 4 // servo [2] chap oyoq #aniq PIN_RR 5 // servo [3] o'ng oyoq // ultra tovushli PIN kodlar /////////////// / ///////// #define PIN_Trigger 8 // TRIGGER pin (8) #deinine PIN_Echo 9 // ECHO pin (9) // BUZZER PIN kodi /////////////// / //////////////fine PIN_Buzzer 13 // BUZZER pin (13) // SERVO ASSEMBLY PIN -kodi ////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////// Otto oyoq va oyoqlarini yig'ishga yordam berish uchun - 7 -pin va GND o'rtasidagi simli aloqa #PIN_ASSEMBLY 7 -ni belgilang // Yig'ish pin (7) LOW = montaj YUQORI = normal ishlash ///////////////// / //-Global o'zgaruvchilar -------------------------------------------/. //////////////////// int masofa; // ultratovushli diapazon topuvchi modulidan o'qilgan masofani saqlash uchun o'zgaruvchi bool obstacleDetected = false; // aniqlangan ob'ekt biz o'rnatgan masofada bo'lganda mantiqiy holat //////////////////////////////////// /////////////////////////////// //-- Sozlash -------------- ---------------------------------------- // //////// / ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Servo pim va ultrasonik pinlarni va Buzzer pin pinMode (PIN_ASSEMBLY, INPUT_PULLUP) ni o'rnating; // - Oson yig'ish pimi - LOW - montaj rejimi // Otto uyg'onadi! Otto.sing (S_onlanish); // Otto tovush chiqaradi Otto.home (); // Otto tayyor holatiga kechikishga o'tadi (500); // Otto to'xtashiga ruxsat berish uchun 500 millisekund kuting // agar Pin 7 LOW bo'lsa, OTTO servosini uy rejimiga qo'ying, oson yig'ishni yoqing // Ottoni yig'ishni tugatgandan so'ng, pin 7 va GND o'rtasidagi aloqani olib tashlang. (PIN_ASSEMBLY) == LOW) {Otto.home (); // Otto tayyor holatiga o'tadi Otto.sing (S_happy_short); // har 5 soniyada kuylang, shuning uchun biz bilamizki, OTTO hali ham ishlamayapti (5000); // 5 soniya kuting}

}

/ //////////////////-Asosiy halqa --------------------------- ------------------ // /////////////////////////////// /////////////////////////////////////// void loop () {if (maneaDetected) {// if 15 sm dan yaqinroq ob'ekt bor, keyin biz Otto.sing (S_surprise) ni bajaramiz; // ajablanib Otto.jump (5, 500); // Otto Otto.singdan sakraydi (S_cuddly); // tovush a // Otto uch qadam orqaga ketadi (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // orqaga qaytish buyrug'ining kechiktirilishi (500) uch marta takrorlanadi; // Otto joylashishi uchun kichik 1/2 soniya kechikish // Otto chapga 3 qadam buriladi (int i = 0; i <3; i ++) {// uch marta takrorlang Otto.turn (1, 1000, 1); // "chapga yurish" buyrug'ining kechikishi (500); // kichik 1/2 soniya kechikish, Ottoning joylashishiga imkon beradi}} boshqa {// agar oldinda hech narsa bo'lmasa, Otto.walk (1, 1000, 1); // Otto to'g'ridan -to'g'ri yurish manerierDetector (); // ultratovush diapazonini 15 sm dan yaqinroq ob'ektni tekshirish uchun funktsiyani chaqiring}} ////////////////////////////// ////////////////////////////////////////////////////-Vazifalar --------- ----------------------------------------- // /////// / /////////

/- masofa sensori o'qilishi va to'siqni aniqlash funktsiyasi

bo'sh to'siqDetector () {int masofa = Otto.getDistance (); // ultratovushli diapazonni aniqlagichidan masofani oling, agar (masofa <15) obstacleDetected = true; // bu masofa 15 sm dan yaqinroq yoki yo'qligini tekshiring, aks holda to'g'ri obstacleDetected = false; // bo'lmasa, noto'g'ri}

Tavsiya: