Не винятком є і наш робот. В цьому пості розповімо як ми обвішували його фарами та підсвітками і що з цього вийшло.
Освоєння робототехніки крок за кроком з використанням Arduino та нескладних схем
Показ дописів із міткою програмування. Показати всі дописи
Показ дописів із міткою програмування. Показати всі дописи
22 листопада 2017 р.
18. Світлодіоди та фари
Мабуть, не менше половини крутості високотехнологічній електроніці дають натикані всюди світлодіоди. Холодними своїми променями вони нарочито підкреслюють зверхність над простими смертними із тіла і крові, які нездатні випромінювати нічого корисного.
Не винятком є і наш робот. В цьому пості розповімо як ми обвішували його фарами та підсвітками і що з цього вийшло.
Не винятком є і наш робот. В цьому пості розповімо як ми обвішували його фарами та підсвітками і що з цього вийшло.
7 липня 2017 р.
17. Покращення дистанційного керування
Складніші задачі - цікавіші розв'язки
Останні кілька місяців ми були зайняті вдосконаленням системи віддаленого керування роботом. Перша версія, яку ми створили пів року тому, працює непогано, і має достатній запас функціональності, щоб покрити більшість планованих нами задумів. І RoboRemo з роллю пульта керування справляється просто фантастично.
Але кількох важливих речей таки бракувало:
- Можливості передавання відео з робота, щоб бачити обстановку навколо нього
- Можливості керувати роботом за допомогою джойстика або ігрового керма
- Великий екран, на якому можна розмістити детальну панель керування з купою перемикачів, індикаторів, потоком відлагоджувальних повідомлень і т.д.
11 березня 2017 р.
16. Інфрачервоні сенсори відстані
Апаратна частина
Зазнавши невдачі з ультразвуковими сенсорами відстані, ми засіли заНеобхідно було знайти такі сенсори відстані, якими можна обставити при потребі всього робота навколо і покази яких можна зчитувати блискавично (не чекаючи поки прокрутяться сервомашинки). Треба, щоб сенсори не конфліктували між собою, були недорогі і здатні розпізнавати невеликі перешкоди.
Справжньою знахідкою виявився набір інфрачервоних сенсорів, які так і називаються "інфрачервоні сенсори для уникання перешкод роботами на основі Ардуіно". За три з половиною долари пропонують аж 5 штук - цілком достатньо для початку.
22 січня 2017 р.
15. Ультразвуковий сенсор відстані
Принцип дії
Прийшов час нарешті навчити робота орієнтуватися на місцевості і відправити його у "вільне плавання" по кімнаті. Ще раніше ми поставили на робота кронштейн із ультразвуковим сенсором відстані HC-SR04, але до цього моменту він виконував виключно декоративну функцію.Як саме працює такий сенсор відстані тут описувати не будемо - раджу почитати спеціалізовані статті Ultra-Sonic "Ping" Sensor (англ.) або Ультразвуковой датчик измерения расстояния HC-SR04 (рос.).
Суть проста - в якийсь момент часу сенсор випромінює ультразвуковий імпульс. Той імпульс біжить вперед, відбивається від перешкоди (якщо вона є) і повертається назад в приймач сенсора. Знаючи швидкість звуку в повітрі (~300 м/с) легко порахувати яку відстань пробіг імпульс від сенсора до перешкоди.
14 грудня 2016 р.
13. Драйвер двигунів
Вибір
Вибираючи плату з драйвером двигунів, ми зробили ще одну помилку. Здавалося би - що тут думати. Береш перший-ліпший оптимальний по ціні модуль - і двигуни їдуть. Але виявилося, що варто було подумати трохи грунтовніше.Ми спокусилися на найдешевшу версію, виконану у вигляді шилда: Motor Drive Shield L293D For Arduino Duemilanove Mega UNO
25 листопада 2016 р.
10. Дистанційне керування
Нарешті дійшли руки до модуля ESP13, якого нам помилково прислали разом із шасі і який до цього часу припадав пилюкою в надійному місці. Цей модуль ідеально підійшов для реалізації дистанційного керування нашим роботом.
23 листопада 2016 р.
9. Діодне освітлення з використанням регістра зсуву
Відколи ми почали додавати до робота нові і нові пристрої, серйозною проблемою стала обмежена кількість виводів Arduino Uno. І то наш проект ще зовсім далекий до завершення. Що ж буде далі?
Варіантів вирішення є досить багато, аж до використання кількох плат Arduino, кожна з яких має свою спеціалізацію. Але погодьтеся, ставити додаткову плату Arduino щоб просто поблимати діодами - то якось звучить зовсім неправильно.
Є прості і давно пророблені рішення, які дозволяють легко оминути такі обмеження. Найпоширенішими з них є протоколи I2C та SPI, які підтримуються Arduino зразу "з коробки".
Гарний огляд цих протоколів дає Джеремі Блум у своїх уроках Arduino (англ. або рос.). Лаконічний і дуже конкретний опис також можна почитати в статті Розширяємо порти (рос.). Глибше в деталі можна пірнути тут: Підключаємо купу пристроїв до Arduino п'ятьма дротами (рос.).
Варіантів вирішення є досить багато, аж до використання кількох плат Arduino, кожна з яких має свою спеціалізацію. Але погодьтеся, ставити додаткову плату Arduino щоб просто поблимати діодами - то якось звучить зовсім неправильно.
Є прості і давно пророблені рішення, які дозволяють легко оминути такі обмеження. Найпоширенішими з них є протоколи I2C та SPI, які підтримуються Arduino зразу "з коробки".
Гарний огляд цих протоколів дає Джеремі Блум у своїх уроках Arduino (англ. або рос.). Лаконічний і дуже конкретний опис також можна почитати в статті Розширяємо порти (рос.). Глибше в деталі можна пірнути тут: Підключаємо купу пристроїв до Arduino п'ятьма дротами (рос.).
12 листопада 2016 р.
8. Програмна архітектура і багатозадачність
Думальний процес робота включає багато елементів. Це і логіка низького рівня (ввімкнути двигуни, блимнути світлодіодом, пропищати щось в динамік), і логіка середнього рівня (доїхати до перешкоди, зупинитися, помітивши край прірви - зупинитися, розвернутися, втекти), і логіка високого рівня (вибрати стратегію поведінки, дослідити і запам'ятати схему приміщень). Всі ці "думки" у вигляді програмного коду крутяться в "голові" робота постійно і одночасно. І буде дуже недобре, якщо, робот захопиться розрахунком маршруту, і гепнеться зі сходів не помітивши прірву перед собою. Можливість думати про багато речей одночасно називається багатозадачністю.
Якщо ви добре розбираєтеся в програмуванні і не відчуваєте потреби заглиблюватися у роздуми про особливості реалізації багатозадачності - просто скачайте архів з кодом і правте його на свій розсуд. Весь наступний текст просто пояснює звідки цей код взявся і чому він є саме таким.
Якщо ви добре розбираєтеся в програмуванні і не відчуваєте потреби заглиблюватися у роздуми про особливості реалізації багатозадачності - просто скачайте архів з кодом і правте його на свій розсуд. Весь наступний текст просто пояснює звідки цей код взявся і чому він є саме таким.
4 листопада 2016 р.
7. Генерування звуків
Отже наш робот навчився повзати. Прийшов час дати йому голос. Очевидно, що той же ж R2D2 не в останню чергу став знаменитістю через свої особливі трелі і свисти. Наш робот має бути не гіршим.
Для синтезу складних звукових ефектів є багато недорогих модулів, які легко інтегрувати з Arduino. Включно з модулями, які можуть відтворювати MP3 файли із внутрішньої пам'яті або micro-SD карт.
В нас поки нічого такого нема. Але завжди можна знайти якийсь вихід.
Для синтезу складних звукових ефектів є багато недорогих модулів, які легко інтегрувати з Arduino. Включно з модулями, які можуть відтворювати MP3 файли із внутрішньої пам'яті або micro-SD карт.
В нас поки нічого такого нема. Але завжди можна знайти якийсь вихід.
1 листопада 2016 р.
6. Нове шасі - перші рухи
Не пройшло і місяця, як прибуло наше шасі. Акуратна коробочка з купою шматків фарбованого металу, болтиками, кріпленнями, двигунами, і дротами.
Скажу чесно - спочатку були трохи побоювання. Заплатити відчутну суму грошей за покупку через Інтернет китайського виробу, який ми бачили тільки на фото і одному відеоролику…
На щастя - наші побоювання виявилися марними. Всі металеві деталі зроблені дуже якісно. Ніяких гострих країв, всі отвори і зрізи акуратно зашліфовані. Фарбування акуратне, рівномірне і стійке до протирання та подряпин. Деталі виконані точно - все сходиться і стикується ідеально. Всі коліщата монтуються на підшипники, тому опір тертя мінімальний.
Радості від складання шасі було не менше, ніж від складання хорошого конструктора Lego чи якоїсь шафки IKEA :-)
Скажу чесно - спочатку були трохи побоювання. Заплатити відчутну суму грошей за покупку через Інтернет китайського виробу, який ми бачили тільки на фото і одному відеоролику…
На щастя - наші побоювання виявилися марними. Всі металеві деталі зроблені дуже якісно. Ніяких гострих країв, всі отвори і зрізи акуратно зашліфовані. Фарбування акуратне, рівномірне і стійке до протирання та подряпин. Деталі виконані точно - все сходиться і стикується ідеально. Всі коліщата монтуються на підшипники, тому опір тертя мінімальний.
Радості від складання шасі було не менше, ніж від складання хорошого конструктора Lego чи якоїсь шафки IKEA :-)
28 жовтня 2016 р.
3. Середовища програмування
Як не крути, а інженеру-робототехніку таки доведеться писати програми. Тут для Arduino є вибір між багатьма варіантами. Розглянемо те, що годиться для початківців.
- Arduino IDE базове і дуже просте середовище, яке дозволяє писати програми на С/С++. Ставити його треба в будь-якому випадку, бо має в комплекті USB драйвери для роботи з Arduino, які використовують всі інші оболонки. Для початкових експериментів підходить ідеально, бо створене максимально простим і надійним. Якщо ж проект великий і кількість файлів з текстами програми росте, використовувати стандартну оболонку стає незручно.
Підписатися на:
Дописи (Atom)


