Согласен, дети любят приводы потаскать вперёд и назад, но пока вроде не сожгли.
Видел такие на Ali для защиты, нужно будет добавить. Спасибо!
В будущем планирую сделать некий защитный кожух на механику для защиты, чтобы никто руки не повредил. Бывает шайба вылетает туда и доставать её опасно. Хоть алгоритм игры и предусматривает простой в случае отсутствия шайбы на поле, но безопаснее прикрыть механику.
Оптические датчики, я так понимаю, в таком случае считают количество пройденных «шагов» обычными моторами. В случае шаговых моторов изначально посылаю команду сколько шагов нужно пройти до нужной точки.
Тоже конечно вариант, но цены и размеры примерно, как и у шаговых моторов.
В комментариях поступают идеи использовать соленоиды и даже пневмо для удешевления и упрощения механики. Это заманчиво, механику можно на порядок удешевить, но придётся поломать голову, как это всё сделать.
Если брать разность между кадров (такое тоже пробовал), в процессе игры бывает много шума на изображении, т.к. толкают хоккей, камера вибрирует.
Но, главное для меня было пройти самому путь именно в распознавании с помощью нейросети — создать датасет, всё настроить, обучить, получить результат. Одно дело читать про это, видеть, как другие настраивают и обучают, но всё сделать самому — это знания на будущее для следующих проектов.
Да, сейчас собранная механика слишком дорога и занимает много места. Для перехода на соленоиды или что-то другое нужно будет потратить немало времени и средств, но при желании всё возможно.
Из Федерации настольного хоккея России пригласили поучаствовать робота в качестве обычного участника, как начнутся игры. Со временем разберусь в терминах.
Сначала всё начиналось и развивалось, как хобби. Ближе к завершению, когда стало видно, что получается интересный «продукт», уже стали поступать от самых разных людей различные советы, как коммерциализировать продукт.
Задержку «команда-движение» не замерял, но она зрительно пока значительно меньше, чем «картинка с камеры — команда» ~750 миллисекунд из-за слабого процессора на десктопе с 2-х ядерным Pentium G3460. Это критично для реакции вратаря робота. Сейчас переношу «мозг» с десктопа на Raspberry Pi 4, установленный на борту робота. Камера будет другая, без рыбьего глаза, а не как сейчас (устранение тоже неплохо «ест» ресурсы), подключение будет через разъём Camera Raspberry Pi. Алгоритм распознавания объектов после нейросети немного переделаю, сделаю «умнее» и на порядок быстрее, есть идеи. В итоге задержка будет ~100-150 миллисекунд.
Если задаться целью, можно со временем совсем избавиться от Ардуино.
Использую почти максимум, в зависимости от мотора 1.7А или 2А, т.к. в целом моторы используются кратковременно.
У меня 3 разных типа моторов, брал по-очереди на Ali, тестировал, чтобы найти оптимальный по весу и мощности. Где-то среди продавцов позже нашёл 2.5A, если не врут, тоже Nema17 4401, надо будет их попробовать.
На платах драйверов TMC2100 в Китае не соединили ножки чипа Trinamic с пинами на плате драйвера. Сначала тестировал драйвер, переключал режимы шагов с помощью пинов ms, а результат всегда один. Где-то в интернет нашёл информацию и фотки, что нужно соединить/припаять. Припаял — заработали режимы.
Думал об этом в начале, перебирал варианты, как сделать привод. Для червячного привода нужно больше оборотов, на счёт шума самого привода не знаю, какой звук он бы издавал на большой скорости. Выбрал ремень.
С этого и начал, поставил сначала шестерню на 60 зубов, шума было много с драйвером мотора A4988 (этот момент будет в следующем видео в серии выпусков, как собирал робота). С шестернёй на 20 зубов шума стало меньше — превратился в писк. Тогда это было приемлемо.
Сдвинуть привод с места на малой шестерне мотору легче, да и компактнее стало.
Торможение заложено быстрое, но плавное. Иногда торможение не нужно — при тычке по шайбе.
Параллельная работа возможна, это заложено, можно сразу передвигать всех игроков и вращать клюшкой. Правда при ударе по шайбе в программе я это не использую, подъехал, ударил. Усложнять алгоритм можно бесконечно.
Я начал делать серию видео-выпусков о том, как собирал робота, пока 2 серии: Идея & старт и Шаговые моторы (видео-версия этой статьи). В следующих выпусках буду рассказывать, как проводил распознавание и обучение.
Видел такие на Ali для защиты, нужно будет добавить. Спасибо!
В будущем планирую сделать некий защитный кожух на механику для защиты, чтобы никто руки не повредил. Бывает шайба вылетает туда и доставать её опасно. Хоть алгоритм игры и предусматривает простой в случае отсутствия шайбы на поле, но безопаснее прикрыть механику.
Тоже конечно вариант, но цены и размеры примерно, как и у шаговых моторов.
В комментариях поступают идеи использовать соленоиды и даже пневмо для удешевления и упрощения механики. Это заманчиво, механику можно на порядок удешевить, но придётся поломать голову, как это всё сделать.
Т.к. я живу в Подмосковье, с прототипом робота смогу сейчас поучаствовать только в Москве.
Но, главное для меня было пройти самому путь именно в распознавании с помощью нейросети — создать датасет, всё настроить, обучить, получить результат. Одно дело читать про это, видеть, как другие настраивают и обучают, но всё сделать самому — это знания на будущее для следующих проектов.
Если задаться целью, можно со временем совсем избавиться от Ардуино.
У меня 3 разных типа моторов, брал по-очереди на Ali, тестировал, чтобы найти оптимальный по весу и мощности. Где-то среди продавцов позже нашёл 2.5A, если не врут, тоже Nema17 4401, надо будет их попробовать.
Сдвинуть привод с места на малой шестерне мотору легче, да и компактнее стало.
Параллельная работа возможна, это заложено, можно сразу передвигать всех игроков и вращать клюшкой. Правда при ударе по шайбе в программе я это не использую, подъехал, ударил. Усложнять алгоритм можно бесконечно.
Я начал делать серию видео-выпусков о том, как собирал робота, пока 2 серии: Идея & старт и Шаговые моторы (видео-версия этой статьи). В следующих выпусках буду рассказывать, как проводил распознавание и обучение.