Ardulego или Mindstorm для нищебродов

Розділ про навчання та змагання з робототехніки.
y.ganusyak
Повідомлень: 20
З нами з: 27 травня 2017, 21:53

Re: Ardulego или Mindstorm для нищебродов

Повідомлення y.ganusyak » 04 червня 2017, 19:50

romaxa11 писав:Я також вважав Mindstorm невиправдано дорогим колись. Розуміння ціни прийшло відносно недавно. В ціну крім вартості детальок, приводів, датчиків, програматора закладено ще й унікальні навчальні програми з повним циклом для вчителя і учня. Це і прикладна фізика, робототехніка, програмування, аеронавтика, які знаходяться у відкритому доступі на офіційному сайті, в розділі Education. Плюс унікальне навчальне програмне середовище для дітей. Коли зважити плюси і мінуси, то ціна EV3 в половину вартості хорошого смарта - це недорогий і дуже якісний завершений навчальний пакет. Technic це також унікальний адаптований інженерний проект, можливості якого виправдовують вартість.
Дело, ведь, не в простой экономии.
Я уже потратил на Arduino и все к ней больше, чем стоит Mindstorm, и я совершенно спокойно могу купить его хоть завтра.
Но еще неделю назад я не знал, как работают простейшие электрические схемы, не умел паять и т.п.
А купить готовое решение - самое простое, что можно придумать
romaxa11
Повідомлень: 77
З нами з: 01 грудня 2016, 01:16

Re: Ardulego или Mindstorm для нищебродов

Повідомлення romaxa11 » 04 червня 2017, 22:38

Ну в назві теми ви самі вказали Ардуіно як дешевший аналог Майндсторма і зачємплатітьбольше. Хоча це різні речі, як дошка в столярному цеху і навчальна дошка в класі. І Майндсторм це про дітей і як їх стимулювати зануритись в робототехніку. Я скину посилання на https://education.lego.com/ru-ru рік тому курси коштували по 500 баксів за штуку. Зараз безкоштовні. Там відбувається навчання від основ механіки, шестрень, передаточних чисел, до побудови роботів з певними характеристиками і їх програмування. Причому курси як для вчителів так і для дітей. Цьому просто немає аналогів. І ніхто не намагатиметься конкурувати з продуктом такої якості, ще й безкоштовним. Що легше для освоєння 7-10 річної дитини: платформа з відкритим кодом і гіківськими форумами, чи набір з об'єктним програмуванням і чіткими методичними поясненнями? Програмування Ардуіно це мови С, С+, а це трошки певний рівень і фіг знати чи дитина витягне, хоча якщо витягне то дійсно Майндсторм тут зайвий)
y.ganusyak
Повідомлень: 20
З нами з: 27 травня 2017, 21:53

Re: Ardulego или Mindstorm для нищебродов

Повідомлення y.ganusyak » 13 червня 2017, 21:18

Итак, прошло больше обещанной недели с момента, как я писал в этой теме.

Как часто бывает, сроки сдвигаются не потому, что ты ленишься, скорее, даже наоборот, а потому, что если ты чем-то увлекся в Украине, твой путь больше похож на боль и страдания, чем на что-то легкое и непринужденное. Надеяться на то, что нужно тебе нечто обнаружится в тот же день в радиусе досягаемости стремится к нолю. И если ты не знаешь заранее на 100% точно, что тебе нужно, и ты не заказал это в количестве от 100500 штук на алиэкспрессе, то в нужный момент ты его просто не найдешь.

Итак:

Challenge #2: RC Lego.

Дистанционное управление на ИК пультике мне сразу понравилось не очень. Все прогрессивное человечество давно перешло на радио-диапазон 2.4GHz. А мы чем хуже? Тем более, если выйдет что-то похожее на рабочее решение, его можно будет потом использовать и в других проектах, не связанных с Lego, а масштабируемость у RC 2.4Ghz несравненно выше, чем у ИК.

Задача сама по себе имеет ряд решений разной степени интересности и сложности.

Можно, например, взять любой пульт радиоуправления, воткнуть провода от приемника в Arduino и все. Вот так, к примеру:
Зображення

Not too exciting, как говорят носители языка Байрона.

Основная задача тут не взять готовое решение, а научиться что-то делать своими руками и научить подрастающее поколение. Ну или заинтересовать радио/робо-техникой на этой стадии его взросления.

Техническое задание на момент недельной давности выглядело примерно так:
Пульт должен был быть минимум двухканальным для управления танком из первого поста, а лучше иметь запас: 4 канала с пропорциональным управлением и 2-4 триггера
Приемник должен помещаться в прямоугольник лего 3х9, чтобы в перспективе помещаться в панель 5x11
Приемник должен питаться от бат. блока Lego и быть совместимым с моторами Lego без модификации. (завтра приедет серва и буду делать следующую версию, совместимую с ней)
Желательно, чтобы оно работало.

Часть первая: секс с куском пластмассы.

Самой коварной частью на дороге к успеху оказался сам радиомодуль. К и положено, жизнь соткана из геморроев и, придя домой и, собрав все на макетной плате, я увидел, что ничего не работает.
Ирония судьбы заключается в том, что если ты лошара, который недавно в этом все бизнесе, перед тобой лежит две ардуины, с кучей проводов между которыми нет связи. И есть примерно 100500 причин, почему оно не работает.
Непродолжительный вгугл показал, что модуль очень капризен по питанию, очень любит кушать отдельно от всех и только вкусные 3.3V, а не то, что отсыпает с барского стола Ардуина из своего пина с надписью "3.3".
Примерно два ухода спать в 5 утра чуть прояснили картину:
1. Нужна отдельная линия питания, отлично сработал линейный стабилизатор LD1117, понижающий то, что ему скармливают до 3.3V ровно.
2. Очень хорошо помогает конденсатор прямо на ножках питания модуля или где-то очень близко.
3. Не все библиотеки RF24 одинаково полезны. Некоторые устарели, некоторые несут полный бред. У меня лучше всего сложилось с https://tmrh20.github.io/RF24/, как и у многих пользователей этих ваших интернетов.
4. Чем больше проводов, а уж тем более, разъемов между NRF24 и входами Arduino, тем лучше. По-хорошему нужно делать плату.

Кстати, о платах. Все эти ЛУТ, фоторезисты и прочее - полное гагно. Т.е. этим можно пользоваться, но пока сделаешь минимально приличную плату своими руками, потратишь столько времени, что... Берешь Eagle, тратишь пару часов на мануалы и за 100 грн тебе делают 2 платы для примника и 2 для передатчика.
Вот, чего я точно не хочу делать в сколько-нибудь обозримом будущем - это заниматься такой порнографией:
Зображення

Без большого опыта на плату уходит столько времени, что хочется плюнуть и выбросить в окно. Плюс шансы что-то сделать не так поднимаются чуть выше тех, с которыми хочется за что-то браться.

Примерно пару часов с паяльником и такой то матерью и на выходе - вот такой не особо аккуратный, но рабочий приемник:
ЗображенняЗображення

А вот - с другой стороны.

ЗображенняЗображення
Слева - два разъема под моторы и только под моторы (с сервой пока не совместимо).
Справа - разъем питания под блок Lego

Кстати, о радиомодулях NRF24: львиную долю геморроя мне подарил один местный магазин, продав мне два модуля с антенной, один из которых вообще отказался работать. Т.е. один вечер я провел пытаясь понять, почему не работает модуль, который не работает сам по себе :) Зато нашел все причины, почему он мог бы не работать, если бы был рабочим и, когда приехали 4 модуля без усилителя, все завелось с первого раза.


Примерно так он устанавливается на "танк":
ЗображенняЗображення

А сегодняшний день прошел под знаком передатчика. В очередной раз выяснилось, что купить что-то в Одессе от "очень сложно" до "нереально" и банальные стойки, на которые крепятся платы удалось найти только в 4-м магазине.
Еще часик в обнимку с текстолитом, дрелью, паяльникм и т.п. т на выходе вот это:
ЗображенняЗображення
Не самое лучшее, что можно было сделать своими руками. Но, учитывая мой опыт самоделания, отсутствие нужных инструментов и т.п. получилось, вроде норм.

У пульта распаяно 4 канала под пропорциональное управление и две "кнопки". Питается от 4 х Eneloop Pro.
Дальность работы на открытой местности еще не проверял, но в квартире через 2 стены прием есть.

Из того, что хочется доделать на пульте: экран, показывающий ping и процент потери пакетов, возможно, телеметрию заряда аккумов на приемнике.

Конечно, один приемник и один передатчик - это хорошо, но нужно два! А, значит, поддержка нескольких устройств одним пультом с памятью настроек, выбор приемника, которым управляешь, желательно через меню.

В общем, еще есть чем заняться, а, главное, что есть желание и время на это.

Если кто-то вдруг захочет повторить, приведу список деталей, которые ушли на сборку и примерный бюджет:
две макетные платы: одна под приемник, вторая - под передатчик. точные размеры не знаю, но я выбирал наугад - около 60 грн за две
Arduino Nano (приемник), Arduino Pro Mini: 65 и 155 грн соотв.
Драйвер двигателей: L293D (TB6612FNG все еще в пути из заботливого Китая) - 7 грн
Гнездо din16 под него - 1.5 грн
Конденсаторы: 2*10мкФ + 2*100нФ = 7 грн
Радиомодули: NRF24 - 2*23 грн
Два гнезда типа мама 1х40 - 4 грн
Линейные стабилизаторы - LD1117 3.3V - 2*6.5 грн
Джойстики - 2*53 грн
Кабели Lego - 2*130 грн
Полимерные гайки, болтики и стойки для плат - гривен на 20
Коннекторы - еще на столько же
Аккумуляторы Eneloop Pro (4 в передатчике) и Powerex Imedion (6 в блоке питания Lego) - были в хозяйстве, но если покупайть, обойдутся примерно в 1200 грн

Итого примерно 750 грн за пульт с приемником, из которых почти половина - кабели Lego и треть - ардуины. Т.е. всяких радиокомпонентов меньше, чем на 10 баксов

И вживую выглядит вот так:

ездит достаточно медленно, так как в программе зашит коэффициент 0.75 на вольтаж, подаваемый на моторы.

Но мы отвлеклись от темы: скоро будет первый почти полноценный робо-проект: Lego line follower. На самом деле, спаял я его еще неделю назад, но руки не доходили снять и выложить.
Аватар користувача
MaximB
Повідомлень: 2308
З нами з: 24 липня 2012, 02:06
Звідки: Ужгород

Re: Ardulego или Mindstorm для нищебродов

Повідомлення MaximB » 13 червня 2017, 22:41

Класс :good:
Зображення
Аватар користувача
amuletgrey
Повідомлень: 35
З нами з: 20 січня 2017, 14:03

Re: Ardulego или Mindstorm для нищебродов

Повідомлення amuletgrey » 17 квітня 2018, 19:11

О, яка цікава темка!
Пст, хлопче, хочеш переобладнаю твою батарейку на літієву :yes2: ?
Miй Flickr
Мій OLX
Відповісти

Повернутись до “Робототехніка”