Размер шрифта:
Скретчдуино - легкий путь в Ардуино-робототехнику для детей и начинающих. ⁠ ⁠
Play

Скретчдуино - легкий путь в Ардуино-робототехнику для детей и начинающих. ⁠ ⁠

В своих предыдущих постах я уже упоминал о проекте Скретчдуино. Теперь хочу поведать, почему я решил рассказать об этом поподробнее. Еще пару лет назад я не думал, что у меня появится хобби, связанное с программированием контроллеров. Несмотря на то, что моя нынешняя работа связана с компьютерной техникой, программированием я не занимался. Теперь предыстория. Однажды жена, приехав с конференции по развитию образования рассказала, что посетила мастер-класс по программированию роботов для детей. Ей очень понравилось, что всего за час участники этого мастер-класса смогли написать простенькие программы и опробовать их на роботах. Однако представители не смогли показать никакой внятной документации к этому проекту. Руководитель проекта посетовал на отсутствие времени и методической помощи, а потом предложил взять робота и попробовать что-нибудь написать.

И тут она достает из сумки коробку с роботом, и говорит, что надеется на мою помощь. А я программировал последний раз в далеком 1989 году, когда студентом писал лабораторные работы в институте на ПК ДВК-4, на Паскале. Причем изучать пришлось самому, в школах тогда информатику не проходили.

Ну что ж, установив ПО, я понял, что многое, оказывается, помню. Очень быстро робот начал выполнять несложные задания. Язык Скретч очень прост, визуализирован, программа составляется из блоков очень быстро. Вот пример простого кода. Робот доезжает до края стола, отъезжает от него и издает звук.

Клавиша "пробел" для экстренной остановки.

Как видите, главный недостаток - это достаточно высокая стоимость. Но разве мы не инженеры? Достоинство проекта в том, что все лежит в открытом доступе. Начиная от ПО и заканчивая чертежами, схемой, документацией на печатные платы и т.д.

Теперь ссылки того, что можно найти в абсолютно свободном доступе:

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

Arduino & Pi

1.1K постов 19K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

До чего СЕО дошло, уже не знаешь где рекламный пост, а где - нет. Или это проф. деформация у меня.

выглядит как переведенный промтом С. или упрощенный 1с. жутко. но зато разноцветный и ас графоном.

Похоже на занимательные программки для детей из проекта час кода.

есть тут у нас похожая деньгоразводная франшиза. Курсы 5 штук в месяц на ребенка, стоимость компонентов к роботу от 30 штук и всё это под соусом обучения и прогресса. Хотя как мне кажется их команды "вперед", "назад" и сборка крупных компонентов к робототехнике относится слабо. По крайней мере не за эти деньги.

Можно пару вопросов?

1. почему вместо шедшего в китайском комплекте УЗ датчика расстояния использовался ИК?

2. в оригинале используется ИК глаз с, я так понимаю, работой по 3-м аналоговым линиям. Вероятно под это заточено и ПО. Судя по описанию, у Вас один ИК датчик расстояния. Как выкручиваться?

Вот я с подозрением к таким упрошенным вещям отношусь, первый язык который я учил был QBasic, Че я только на нем не писал, и файл менеджер, и дрова для графопостроителя, а как я мышку к нему цеплял, это вобще песня. ну так вот, второй курс, начинается паскаль, делфи, си, а я по черному втупляю, ну не получается у меня не как, не синтаксис, не сама система, кое как сдал, больше не вспоминал, а на васике хоть сейчас что нибудь написать могу, хоть его и не трогал лет 10. Толька нахрена он сей-час не нужен.

Я полный 0 в программировании((( сколько ни пытался((( а так хочется, но вот не понимаю(((

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

Отличное инженерное решение⁠ ⁠

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

Интересно глянуть на подполье с подачей.

Самодельный WiFi танк. ESP-32 + Arduino⁠ ⁠

Всем привет, хочу поделится с вами своим танком.

Я cделал танк для того, чтобы научится делать подобные машинки и набраться побольше опыта с платами Arduino и ESP. Ну и вообще просто захотелось собрать что-то такое что б ездило и жужжало =)

Основные компоненты, которые я использовал:

*Модуль ESP-32-cam – в роли камеры и контроллера, который отвечает за роботу с WiFi.

*Arduino Nano – контроллер, который отвечает за управление двигателями и прием/обработку данных с датчиков.

*L298N – драйвер для двигателей (выбран из-за харизматичного вида).

*Датчики, которые есть на борту – ультразвуковой дальномер US-025; барометр BMP280; модуль акселерометр и гироскоп MPU-6050; термометр и гигрометр DHT-11, датчик Холла A3144 в роли импровизированного тахометра.

*Бортовое питание – два аккумулятора 18650 2000 мА*ч; повышайка MT3608; зарядка usb type-c.

*Корпус использовался от игрушечного танка – срезал верхнюю часть, замазал все дырки термоклеем, редуктор оставил родной, металлическая крышка вырезана из автомагнитолы, петля обычная дверная.

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

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

Вид танка спереди. Можно увидеть зеленую плату с двумя «вылупнями» – это ультразвуковой датчик, немного похоже на глаза. Выше в очень аккуратном вырезе притаилась камера и хотя ее характеристики позволяют ей снимать мир в потрясающем разрешении в 2Мп (1600x1200) при практическом использовании ее разрешение меньше – 800x600.

Левый борт. Большинство датчиков размещены (с комфортом) на нижней зеленой плате, на правом краю платы можно увидеть рычажок который переключает танк в бесшумный режим – не будет пищать зуммер, который в свою очередь нужен для подачи танком служебных и оповещающих сигналов для разгона зевак на улице (что б не задавили танк). Так же видно торчащий как палка провод в правом нижнем углу, это датчик Холла, который закреплен напротив ведущей звездочки для подсчета ее оборотов (способ не очень, но работает). Этажом выше расположена Arduino Nano, отсюда она может эффективно распоряжаться своими подчиненными – датчиками и двигателями и общаться по выделенному каналу связи со своей подружкой ESP.

Правый борт танка. Тут можно увидеть: кнопку управления питанием, справа на белой коробке (корпус ESP) находиться красный рычажок, переводящий ESP в режим прошивки, чуть выше кнопка, выполняющая самую важную функцию – перезагрузку ESP. Слева на корме удобно устроился драйвер для двигателей L298N, его радиатор является важным элементом в дизайне танка. Ниже под гусеницей можно наблюдать два болта которые скрепляют крышку танка с его основным корпусом через петлю, данный элемент крепления намеренно сделан побольше для обеспечения структурной целостности и придания характерного вида танка.

Танк с открытой крышкой, вид спереди. Металлическая крышка выполняет несколько функций: обеспечивает эффективное использование пространства, облегчает монтаж элементов и самое главное придает танку бронирование (а танк ведь обязан его иметь). И просто это круто выглядит.

Танк с открытой крышкой, вид от кормы. На этой фотографии видно танковую батарею, моторы, спрятанный шнурок для прошивки ESP, плату зарядки аккумуляторов, которая позволяет танку быть в духе современности – type-C же. Можно еще увидеть кривой монтаж и вырез крышки, но все это элегантно скрывается не в фокусе.

Танк, вид от кормы – на зарядке. Снизу прикручен бампер, благодаря чему к танку можно прицепить трос для помощи своим менее везучим братьям.

Разобранный корпус для ESP. Сам корпус был сделан из остатков сигнализации (датчик движения), внутри обклеен фольгой для экранирования ESP от помех (и просто для красоты). Антенна взята от старого роутера. Данная коробка отлично дополняет стиль танка «из чего было – с того и собрал».

Внутренний вид корпуса ESP. Почти все контакты ESP заняты, снизу видно высокотехнологичное крепление, которое обеспечивает механическую прочность всей конструкции, а также позволяет легко вносить изменения. ESPшка довольно сильно греется во время стрима видео по этому на сам чип и стабилизатор заботливо наклеены радиаторы.

Для управления танком я создал приложение при помощи Unity (игровой движок). Конечно, можно было сделать нативное приложение для андроида, но чисто для прикола почему бы не сделать его на Unity, да?

Главный экран приложения. Вверху в шапке можно видеть всю нужную информацию, например качество связи, заряд батареи, последнюю отданную команду движения и пару-тройку датчиков. Внизу управление. Слева выход, журнал. Справа настройки, данные датчиков и кнопка послать звуковой сигнал. Уровень сигнала ноль, потому что это уровень сигнала от репитера (вторая ESP, в роли маршрутизатора для увеличения радиуса действия), но на тот момент танк был подключен напрямую.

Экран настроек. Можно поменять размер картинки, качество видео. Из прикольного автонастройка качества видео, если связь ухудшается и видео начинает идти с задержками, то приложение автоматически посылает сигнал танку для перенастройки качества сигнала. Работает не прям что идеально, но вполне сносно. Так же есть галочка для снятия защиты двигателей, не смотря на название двигатели оно не защищает, это защищает сам танк от зависания, когда на низком заряде двигатели выжимают последние капли из батареи и напряжения не хватает для контроллеров (да можно было бы сделать раздельное питание, но мне хотелось единое).

Экран данных с датчиков. Ничего такого просто датчики, просто данные. Часть из них к тому же не очень-то и настроена.

Демонстрация работы танка ниже на видео. Видео ускорено в 3 раза.

Выводы. Сам танк получился весьма непростым проектом, хотя я сделал его так как и представлял в своей голове изначально, в процессе я наткнулся на уйму багов, граблей и костылей, но зато теперь имею опыт создания подобного, а для этого я и делал танк.

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

Бонусная фотография – танк на вечерней прогулке

Нового робота-хирурга начали использовать в Боткинской больнице⁠ ⁠

Новейшая роботизированная система Da Vinci - оснащена улучшенным цифровым эндоскопом, дающим более четкое 3D-изображение, и имеет возможность флуоресцентной визуализации, при которой хирург может оценить состояние сосудов, желчных протоков и кровоток в тканях, определить пораженные лимфоузлы опухолевых тканей.

Система также совмещает в себе все достижения роботизированной хирургии и позволяет значительно расширить возможности для проведения минимально инвазивных хирургических вмешательств, сделать их еще более точными и безопасными для пациентов.

Отмечается, что при полной загрузке в год роботом в Боткинской больнице оперируются 500 пациентов

Радиоуправляемая полноприводная платформа, с намеком на подвеску. Или коротко о скуке инженера - часть 4 - финал(?)⁠ ⁠

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

В общем, смотрел смотрел я на все то, что наизобретал до этого, и все мне не нравилось. В итоге психанул, открыл новый чертеж и накидал новый подрамник с нуля, учитывая все хотелки и необходимости. Ну а за подрамником подтянулось и все остальное.

Из того, что мне не нравилось в предыдущей версии больше всего, поменялись кулаки. Теперь они больше, надежнее держат мотор от люфтов и есть ограничитель, чтоб он не выпадал назад.

Желтые китайские меня ну никак не устраивали, поэтому решено было переходить на печатные. Но как мы помним, там был трабл с покрышками. Решение гениально и просто - печатаем диск, с нужен вылетом и шлицом, и натягиваем на него покрышку от китайского брата инвалида!

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

В связи с этим уменьшилась нагрузка на валы моторов, тк рычаг стал меньше, и существенно сузилась колея.

Из за изменившейся конструкции подрамника значительно увеличился ход подвески - наконец то стало возможно выставление рычагов в горизонт при полной работе. Среди прочего - приведенные в порядок размеры, небольшое изменение габаритов и тд по мелочи.

Ну и самое главное - повороты. Помните, я упоминал трактор? Так вот. Я честно пытался сделать нормальный поворот, как у автомобиля, но чет даже на уровне чертежа как то не пошло. Зато трактор подкинул идею.

Переломка. Механизм простой, в реализации тоже ничего сложного. Имеет как свои плюсы, так и минусы, и в целом наверно не очень подходит для такой техники. Но кто мне запретит, в конце концов. Да и для разнообразия не помешает.

Накидал раму из двух частей с шарниром посередине. Ради достоверности погуглил чертежи тракторов со схожей системой, и посчитал, что в среднем, расстояние от заднего колеса до переднего в полтора раза больше, чем от правого до левого. Так и сделаем

Крутить вращать все это безобразие будет китайская микросерва, для которой пришлось сделать систему рычагов и тяг. Со всей остальной электроникой вы уже знакомы

Докидываем остальные провода, подключаем собираем, переписываем чутка код под новый поворот, и запускаем в тест

Конечно, в таком виде далеко не уедешь, поэтому облагораживаем.

Очень выручили заранее наделённые в раме дырки, чтобы не заморачиваться сразу с креплением всей навесухи. Побольше дырок - больше полет фантазии. И в случае чего сверлить не надо. Да, именно дырки.

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

Через проставку-переходник прикручиваем на свое место мозги.

В конце вспоминаем, что хоть рама и плотно сидит на своей посадке, но прикрутить лишним не будет.

Находим ершоный болтик

Думаем, как лучше прикрутить батарейный блок. Тоже через проставку переходник

О пользе кучи дырок - прикручиваем незапланированную скобку для проводов.

Ну и собственно вот оно, наше чудо в сборе. Штука получилась на самом деле весьма внушительного размера, ну вот для сравнения на фоне вполне стандартной клавиатуры

Ну и собственно. Ходовые испытания, как же без них)

Ну и вот как то так, в итоге.

Скажу честно, много чего в этом проекте меня не устраивает, очень жаль, что не получилось реализовать нормальный полный привод, с редуктором в базе, да и такая схема поворота скорее вынужденная мера, чем необходимость. Но мне понравилось) Этот проект занимал меня долгими вечерами, вернул на пикабу, так что наверно, это финал. Не хочу, а скорее тупо не умею делать корпуса, и ли но считаю такой "технический" дизайн намного более крутым, а по механике пока мои полномочия все. Хотя. Никогда не говори никогда)

ПыСы: не могу не поделиться путем эволюции подрамников, как самой важной части всего этого

А также кучей других деталей, отбракованных или оставшихся от других версий

Всем спасибо, засим, удаляюсь. )

Ностальгия по "хорошему" времени)⁠ ⁠

Эх, славные были времена!!Сидел дома, зарплата капала, можно было заняться собой, домом, да и просто бездельем) Славные и странные, но лучше чем текущие. Липкие и тревожные. Что там у нас еще?

Будущее⁠ ⁠

Ну та что слева - последний образец, который показывает первые концептуальные модели

Робогонкам — 18 лет! Как это было?⁠ ⁠

18 лет назад, 13 марта 2004 года, в американской пустыне Мохаве произошло знаменательное событие: там состоялась первая в истории гонка автомобилей-роботов. В тот день все участвовавшие в соревновании беспилотные машины сошли с дистанции. Но на этом история «робогонок» отнюдь не закончилась, скорее наоборот — только началась.

Конечно, в 2004 году беспилотные автомобили еще считались экзотикой, и именно дальнейшее развитие этой технологии стало основной целью соревнований. Гонка, получившая название «DARPA Grand Challenge», была организована Управлением перспективных исследований Министерства обороны США (DARPA), тем самым, благодаря которому несколькими десятилетиями ранее на свет появился интернет. Эта организация финансирует различные научные проекты, исследования которых можно использовать для производства вооружений. В сферу интересов DARPA традиционно входят аэрокосмические и компьютерные технологии, биомедицинские изыскания, электроника, и, конечно же, робототехника.

Призовой фонд первой в истории гонки DARPA Grand Challenge был весьма внушительным: миллион долларов, но и объявленные правила оказались непростыми. Дистанция составляла 150 миль (240 км): старт располагался неподалеку от калифорнийского городка Барстоу, а финиш — возле населенного пункта Примм на границе с соседней Невадой. Трасса пролегала не только по дорогам с твердым асфальтовым покрытием, но также включала в себя участки пересеченной местности, проселки, овраги, лужи со стоячей водой, туннели и канавы. При этом точный маршрут был неизвестен практически до самого последнего момента: его объявляли участникам лишь за два часа до старта.

На модель и габаритные размеры автомобилей каких-либо жестких ограничений не накладывалось, главное — чтобы живой человек никак не участвовал в управлении транспортным средством. Также категорически запрещалось сталкиваться с другими автомобилями и наносить повреждения окружающей среде.

На старт первой в истории робогонки заявилось 15 команд, в основном, организованных студентами, аспирантами и преподавателями ведущих американских университетов — каждая построила по одному беспилотному автомобилю. Все робомобили прошли предварительную квалификацию — они должны были проехать милю по D-образному овалу California Motor Speedway в Фонтане. Семь машин полностью преодолели эту скромную дистанцию, в то время как оставшиеся восемь с поставленной задачей не справились, но, тем не менее, их создатели смогли убедить отборочную комиссию в том, что машины способны передвигаться в автономном режиме, потому все претенденты были допущены к соревнованиям.

Однако начать гонку сумели лишь 8 машин, да и те не смогли проехать больше 11 километров: большая часть автомобилей сломалась еще до начала мероприятия, а один перевернулся прямо на старте. Самую маленькую дистанцию, чуть менее 2 километров, проехал автомобиль № 20 команды TerraMax: на его пути встретилось непреодолимое препятствие в виде куста шалфея. Объехать преграду машина не сумела, включила заднюю передачу и застряла в текстурах пейзаже, после чего гонка для нее закончилась. Чуть больший километраж преодолела машина № 5 команды Caltech: сбившись с пути через 2,5 километра, она протаранила забор и остановилась из-за полученных повреждений.

Автомобиль №9 команды Golem Group оставил позади дистанцию в 8,5 км, прежде чем попытался заехать на холм, где и застрял. Машина буксовала на месте около 50 минут, после чего команда все-таки сдалась и вывела ее из гонки. Робомобиль №7 команды DAD (Digital Auto Drive) безнадежно повис брюхом на скалах, проехав 9,5 км. Чуть большее расстояние, 10,8 км, преодолел автомобиль, совместно построенный командами SciAutonics и ElbitSystems — затем он скатился с насыпи и заглох. Через три часа после начала гонки, которая должна была длиться десять часов, на ходу осталось только 4 машины — всех остальных настигли проблемы с навигацией, двигателем, автоматическим рулевым управлением и тормозами.

Самое большое расстояние среди всех участников проехал HUMMER H1 под названием «Песчаная буря» (SandStorm), построенный командой RedTeam из университета Карнеги Меллона — 7,4 мили (11,9 км). Попутно машина поставила рекорд скорости в этой гонке — 65 км/ч. К сожалению, в итоге этот последний участник DARPA Grand Challenge сбился с курса, попытался выполнить крутой вираж и перевернулся. Приз в миллион долларов в итоге не достался никому. Несмотря на это, гонку в целом признали удачной: по крайней мере, она продемонстрировала саму возможность соревнования беспилотных автомобилей на открытой местности. Заместитель руководителя программы DARPA Grand Challenge Том Страт тогда заявил: «машины некоторых участников могли точно следовать по маршруту с использованием GPS-навигации, но испытывали серьезные проблемы с обнаружением препятствий. Другие наоборот, хорошо обнаруживали препятствия, но не могли объехать их. Третьи вовсе пугались собственной тени, воспринимая ее как препятствие…».

Специалисты по робототехнике полагали, что для успешного прохождения полной дистанции гонки создателям робокаров понадобится как минимум несколько лет, но приз в два миллиона долларов (включавший себя миллион, не разыгранный в первой гонке) нашел своего обладателя уже в 2005-м году. В этот раз заявки подали уже 195 участников, которых ждал строгий предварительный отбор. До полуфинала дошли лишь 43 команды, а к старту были допущены 22 из них, представившие 23 автомобиля-робота. Гонка состоялась в пустыне Мохаве 8 октября на дистанции 211,8 км по пересеченной местности. Главный приз выиграла машина команды Stanford Racing Team из Стэнфордского университета, две оставшиеся ступеньки подиума занял прошлогодний лидер Red Team: перевернувшийся годом ранее SandStorm приехал к финишу вторым, а еще один автономный «Хаммер» этой команды занял третье место.

С тех пор робогонки — причем не только под эгидой DARPA — cтали проводиться регулярно. В 2007 году полностью автономные машины гонялись по улицам «города», специально построенного для этого мероприятия на заброшенной авиабазе ВВС США в южной Калифорнии. Городская трасса имела протяженность 96 километров (60 миль), ее нужно было пройти менее чем за 6 часов, соблюдая все правила дорожного движения. Главный приз — 2 миллиона долларов — выиграла команда Tartan Racing на автомобиле Chevy Tahoe, второе место с призом в миллион досталось уже знакомым нам прошлогодним триумфаторам из Stanford Racing Team, которые выставили на соревнования полностью автоматизированный Volkswagen Passat 2006 года выпуска.

С 2012 года робогонки проводятся ежегодно, причем не только в США, но и в других странах мира, и интерес к ним неуклонно растет. В 2015 году появилась серия Roborace — класс беспилотных автогонок, заезды которых проходят в рамках этапов электрической Формулы Е. Правда, пока еще эти заезды больше похожи на шоу, чем на настоящие соревнования. Помимо развлекательного, гонки роботов имеют ещё и огромное научное значение: ведь применяемые во время соревнований технологии теперь используются и в автопилотах серийных автомобилей, и в программном обеспечении аппаратов, исследующих поверхность Марса. Кто знает: возможно, в не столь отдалённом будущем на свете появится полностью роботизированная гоночная серия, столь же популярная, как современная Формула-1.

📎📎📎📎📎📎📎📎📎📎