Мазмуну:

Отто DIY класс финалы: 4 кадам
Отто DIY класс финалы: 4 кадам

Video: Отто DIY класс финалы: 4 кадам

Video: Отто DIY класс финалы: 4 кадам
Video: Christmas gnome Scandinavian Decor Christmas winter decor Gnome family. 4 sizes. Happy New Year 2024, Июль
Anonim
Отто DIY класс финалы
Отто DIY класс финалы

Бул долбоор Отто жана Афина техникалык колледжинин жардамы менен ишке ашты.

Баштоо үчүн, алгач комплектти сатып алуу керек:

Андан кийин төмөнкү кадамдарды аткарыңыз:

1 -кадам: Биринчи кадам: Роботту инструкциядан чогултуп алыңыз

Биринчи кадам: Инструкциядан роботту чогултуңуз
Биринчи кадам: Инструкциядан роботту чогултуңуз
Биринчи кадам: Инструкциядан роботту чогултуңуз
Биринчи кадам: Инструкциядан роботту чогултуңуз

wikifactory.com/+OttoDIY/otto-diy

Бул веб -сайтта сиз Отто роботуңуз үчүн чогултуу көрсөтмөлөрүн жана кодун таба аласыз.

Көрүнүп тургандай, мен ар кандай бөлүктөрдү жана түстөрдү аралаштырып, дал келтирдим жана сунушталган 4 АА батареясынын ордуна кубаттуулук үчүн көчмө кубаттоо блогун колдондум.

Менин спикерим оңой угулушу үчүн алдыңкы жагына орнотулган жана жасалгалоо үчүн оң жагына кылыч бекитилген.

2 -кадам: Экинчи кадам: Plug and Code

Экинчи кадам: Plug and Code
Экинчи кадам: Plug and Code

Роботуңузду чогулткандан кийин, компьютериңизге Arduino IDE жүктөп, роботту туташтырыңыз.

Бул жерде сиз Отто файлдарын түшүрүшүңүз керек. Аларды Arduino китепканалар папкасына түз экспорттоңуз.

Бул сизге Отто берген кодду колдонууга мүмкүнчүлүк берет.

3 -кадам: Үчүнчү кадам: Кодировканы бүтүрүү

Үчүнчү кадам: Коддоону бүтүрүү
Үчүнчү кадам: Коддоону бүтүрүү

Китепканаларыңыз алынгандан кийин, Arduino IDEге кирип, жүктөгүчтөрүңүздүн жаңыртылгандыгын текшеришиңиз керек болот.

Тактаңызды Arduino Nanoго, процессоруңузду ATmega328Pке (Эски жүктөгүчкө) жана COMңузду роботту кайсы портко туташтырганыңызга коюңуз.

Бул кадам жасалып, кодуңуз даяр болгондон кийин, кодду роботко жүктөө үчүн программанын жогорку сол бурчундагы жүктөө баскычын басыңыз.

4 -кадам: Төртүнчү кадам: Watch

Роботуңуздун ооруп жаткан кыймылдарын жана ырдап жаткан үнүн байкаңыз.

Кайсы кодду колдонгонуңузга жараша, роботту ырдайт, бийлейт же тоскоолдуктардан алыс болот.

Бул долбоор качуу коду менен жазылган:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Отто_авоид үлгүсүнүн эскизи // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-Отто DIY PLUS APP жабдыктын версиясы 9 (V9) //-Отто DIY ачык булак коду менен жабдууну камсыз кылган убактысын жана ресурстарын инвестициялайт, комплекттерди сатып алуу менен колдоо көрсөтүңүз (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-Эгерде сиз бул программаны Open Source Licensing астында колдонууну кааласаңыз, анда бардык баштапкы кодуңузду коомчулукка кошушуңуз керек жана жогорудагы бардык текстти кайра бөлүштүрүүгө кошуу керек //-GPL Version 2 ылайык. Сиздин колдонмо таратылганда. Караңыз https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-Отто китепкананын 9-версиясы Отто9 Отто; // Бул Отто!

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

//-Биринчи кадам: Серволор тиркелген казыктарды конфигурациялоо /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | */// SERVO PIN коддору /////////////////////////////////////////////////////////////////////////////////////////////////////// шырак Бойлар ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Vfleffsff////////////” // servo [1] оң бут #define PIN_RL 4 // servo [2] сол бут #define PIN_RR 5 // servo [3] оң бут // ULTRASONIC PINs /////////////// /////////////////////////////////////////////////// ///////// #define PIN_Trigger 8 // TRIGGER pin (8) #deinine PIN_Echo 9 // ECHO pin (9) // BUZZER PIN /////////////// /////////////////////////////////////////////////// ///////////// #define PIN_Buzzer 13 // BUZZER пин (13) // SERVO ASSEMBLY PIN ////////////////////// //////////////////////////////////////////////////// Оттонун буттарын жана буттарын чогултууга жардам берүү үчүн - пин 7 менен GND ортосундагы зым шилтемеси #PIN_ASSEMBLY 7ди аныктоо // ЧОГУЛУУ пин (7) ТӨМӨН = монтаж Жогорку = нормалдуу иштөө //////////////// /////////////////////////////////////////////////// //-Глобалдык өзгөрмөлөр -------------------------------------------/ //////////////////////////////////////////////////// //////////////////// int расстояние; // УЗИ диапазонун табуучу модулдан окулган аралыкты сактоо үчүн өзгөрмө bool obstacleDetected = false; // логикалык абал, объект аныкталган аралыкта болгондо /////////////////////////////////// /////////////////////////////// //-- Жайгашуу -------------- ---------------------------------------- // //////// /////////////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Серво казыктарын жана УЗИ пиндерин жана Buzzer pin pinMode (PIN_ASSEMBLY, INPUT_PULLUP) орнотуңуз; // - Оңой чогултуу пин - LOW - монтаж режими // Отто ойгон! Otto.sing (S_коннект); // Отто үн чыгарат Otto.home (); // Отто даяр абалына кечигүү менен жылат (500); // Оттонун токтоосуна уруксат берүү үчүн 500 миллисекунд күт // (PIN_ASSEMBLY) == ТӨМӨН) {Otto.home (); // Отто даяр абалына өтөт Otto.sing (S_happy_short); // ар 5 секунд сайын ырдап туруңуз, ошондо биз OTTO дагы деле кечигип жатканын билебиз (5000); // 5 секунд күтө туруңуз}

}

/////////////////////////////////////////////////// /////////////////-Негизги цикл --------------------------- ------------------ // /////////////////////////////// //////////////////////////////////////////////////// void loop () {if (obstacleDetected) {// if 15 см жакын объект бар, анда биз төмөнкү Otto.sing (S_surprise) жасайбыз; // сюрприз угулат Otto.jump (5, 500); // Отто секирип Отто.синг (S_cuddly); // үн а // Отто үч кадам артка кетет (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); // Отто түз баруу кедергі obstetDetector (); // УЗИ диапазонун 15смден жакыныраак объектти текшерүү үчүн функцияны чакырыңыз}} ///////////////////////////// /////////////////////////////////////////////////////-Функциялар --------- ----------------------------------------- // /////// /////////////////////////////////////////////////// /////////

/- Алыстык сенсорун окуу жана тоскоолдукту аныктоо функциясы

жараксыз obstacleDetector () {int distance = Otto.getDistance (); // УЗИ диапазонунан аралыкты алуу, эгерде (расстояние <15) obstacleDetected = true; // бул аралыктын 15смден жакыныраак экенин текшериңиз, эгерде ал туура болсо obstacleDetected = false;

Сунушталууда: