Проект «Sweetie Bot». Поиск программистов. Стенд «Электроброни» на РБК.
Всем привет, с вами снова проект по воплощению IRL пони в виде робота!
Для начала немного расскажу про текущий прогресс:
Доделали анимацию глаз.
Очередной раз засветились на EqD.
Свитибот заговорил. Удалось добиться такого же голосового эффекта как у Свитибота из Friendship Is Witchcraft.
За сам голос спасибо MrFremen .
Наш конструкторский отдел добился хорошего прогресса по конструкции третьего прототипа:
Еще скрин и анимация
Много изменений произошло и в программной части. К нам присоединился disRecord , который поделился опытом создания систем работающих в режиме реального времени, с использованием The Orocos Real-Time Toolkit и PREEMPT_RT патча для ядра линукс.
Было решено полностью переработать архитектуру системы управления. На данный момент мы уже согласовали новую структуру ядра САУ и наметили приблизительный план по её воплощению.
Но работы тут еще предстоит много, в связи с чем, продолжаем искать программистов для дальнейшей работы над проектом.
Расскажу поподробней с чем нужно работать.
ROS (Robot Operating System) — открытая среда/фреймворк для создания роботов на базе ОС Linux.
На данный момент, проект ROS, который недавно отпраздновал своё восьмилетие, является самой популярной в мире платформой для создания систем управления роботов.
Cтек технологий ROS использовали 18 из 23 команд участвующих в DARPA Robotics Challenge 2015 году.
Основной функционал предоставляемый ROS это транспорт на базе сообщений, вызовов сервисов и параметров, которые необходимы для создания компонентно-ориентированных систем. Все рассчеты производятся над кинодинамической моделью робота, которая экспортируется из САПР'а, и которая содержит в себе расположение осей, массы, тензоры инерций каждого звена кинематической цепи.
ROS имеет интеграцию с Gazebo — средством визуализации, моделирования и физической симуляции, при помощи различных физических движков.
OROCOS (Open Robot Control Software project) — открытое программное обеспечение для управления роботами. Совместно с ROS позволяет создавать гибкие системы управления с предсказуемым временем выполнения цикла управления.
Платформа: Ubuntu 14.04.4 LTS (можно и другие дистры, но с trusty меньше всего проблем).
Язык: C++
Желательно: технический английский, git.
Мы собираемся делать стенд на предстоящем РБК. Но пока думаем над программой. Свити конечно притащим, но не роботами едиными.
Хотелось бы замутить именно технарский стенд, со всякими электронными интересностями. Предлагается сделать что-то вроде стенда-выставки, куда каждый может принести и показать свой проект связанный с электроникой или просто чего-нибудь техническое. Но нужны идеи для конкурсов/мастерклассов. Помощь в организации стенда также была бы очень кстати. Предлагаю обсудить это в комментариях. Что бы вы хотели на нем видеть?
Для начала немного расскажу про текущий прогресс:
Доделали анимацию глаз.
Очередной раз засветились на EqD.
Свитибот заговорил. Удалось добиться такого же голосового эффекта как у Свитибота из Friendship Is Witchcraft.
За сам голос спасибо MrFremen .
Наш конструкторский отдел добился хорошего прогресса по конструкции третьего прототипа:
Еще скрин и анимация
Много изменений произошло и в программной части. К нам присоединился disRecord , который поделился опытом создания систем работающих в режиме реального времени, с использованием The Orocos Real-Time Toolkit и PREEMPT_RT патча для ядра линукс.
Было решено полностью переработать архитектуру системы управления. На данный момент мы уже согласовали новую структуру ядра САУ и наметили приблизительный план по её воплощению.
Но работы тут еще предстоит много, в связи с чем, продолжаем искать программистов для дальнейшей работы над проектом.
Расскажу поподробней с чем нужно работать.
ROS (Robot Operating System) — открытая среда/фреймворк для создания роботов на базе ОС Linux.
На данный момент, проект ROS, который недавно отпраздновал своё восьмилетие, является самой популярной в мире платформой для создания систем управления роботов.
Cтек технологий ROS использовали 18 из 23 команд участвующих в DARPA Robotics Challenge 2015 году.
Основной функционал предоставляемый ROS это транспорт на базе сообщений, вызовов сервисов и параметров, которые необходимы для создания компонентно-ориентированных систем. Все рассчеты производятся над кинодинамической моделью робота, которая экспортируется из САПР'а, и которая содержит в себе расположение осей, массы, тензоры инерций каждого звена кинематической цепи.
ROS имеет интеграцию с Gazebo — средством визуализации, моделирования и физической симуляции, при помощи различных физических движков.
OROCOS (Open Robot Control Software project) — открытое программное обеспечение для управления роботами. Совместно с ROS позволяет создавать гибкие системы управления с предсказуемым временем выполнения цикла управления.
Платформа: Ubuntu 14.04.4 LTS (можно и другие дистры, но с trusty меньше всего проблем).
Язык: C++
Желательно: технический английский, git.
Анонс стенда «Электроброни» на РБК.
Мы собираемся делать стенд на предстоящем РБК. Но пока думаем над программой. Свити конечно притащим, но не роботами едиными.
Хотелось бы замутить именно технарский стенд, со всякими электронными интересностями. Предлагается сделать что-то вроде стенда-выставки, куда каждый может принести и показать свой проект связанный с электроникой или просто чего-нибудь техническое. Но нужны идеи для конкурсов/мастерклассов. Помощь в организации стенда также была бы очень кстати. Предлагаю обсудить это в комментариях. Что бы вы хотели на нем видеть?
57 комментариев
Радует твой успех, но вот как ты будешь делать оболочку её тела, со всем тем количеством деталей механизма?
Можешь показать голос, который ты ей сделал?
Ну, интересно потому что. Вот зачем) Мне вообще интересно слушать озвучку.
Планируем еще сделать открывающийся рот и вращающиеся уши. Должно забавно смотреться.
Вполне устойчива. Может стоять и на трех ногах и на двух диагональных.
И не вижу никакого укорачивания, вполне поняшное тело. Дело вкуса конечно.
Лады.
Сейчас придёт GL_DOS и покажет если не пони IRL, то пони G1. ;)
Всецело плюсую и желаю успехов в разработке.
Шея
А прототипу слабо устоять на двух копытах?
Должно сработать.
Хочу заметить, что у вашего робота глаза работают неправильно.
Качественная реализация анимации глаз вдохнёт жизнь в робота и он будет более привлекательным.
Я реализовывал анимацию глаз в одной видеоигре и хочу дать совет о том, как это сделать лучше.
Сделайте 3 режима управления взглядом:
1) Режим «следование». Прежде всего, следует знать, что настоящие глаза не умеют плавно перемещать взгляд в рандомную точку. Плавное перемещение взгляда возможно только тогда, когда взгляд «зацеплен» за движущийся объект.
Если робот может следить за движущимися объектами, это должен быть единственный случай, когда взгляд перемещается плавно.
Если робот не умеет следить за движущимися объектами, то не делайте этот режим.
2) Режим «сканирование». Когда мы смотрим на один объект, наш взгляд не фокусируется на одной точке. Мы рассматриваем разные точки, принадлежащие этому объекту. Взгляд при этом резко, почти мгновенно перемещается от одной точки к другой. Легко сделать, рандомно выбирая точку на объекте, меняя её периодически с коротким случайным интервалом.
При отсутствии возможности распознавания/слежения за объектом легко сделать фейковое сканирование, случайным образом выбирая точку взгляда в пределах от настоящей точки взгляда до заданного от неё, например, радиуса отклонения.
3) Режим «смена цели» — самый важный! От реализации именно этого режима зависит большая часть впечатления того, что глаза похожи на настоящие.
Однако, он же и самый простой!
Каждый раз, когда нужно посмотреть на другую цель, глаза закрываются. А когда они открываются, взгляд направлен на нужную точку. Вот и всё.
Дополнительно на подумать: сужающиеся зрачки и прикрывающиеся веки — эффект рассеянного взгляда.
Если всё это реализовать, будет круто. Но прошу обратить внимание хотя бы на пункт 3.
И да, ещё раз: крутой проект :-)
Только у меня есть несколько замечаний.
Во первых, режим «смена цели» должен работать не только через моргание. Если смотреть на анимацию то там приблизительно 50%/50% моргание/быстрое перемещение без моргания.
Еще я предлагаю не использовать слово «плавно» для описания движения радужки, тут скорее подойдет «скорость». Потому-что это два совсем разных параметра: можно перемещаться быстро но плавно, или медленно но резко-скачкообразно (я сейчас не про движение радужки, а вообще).
Всё верно, глаз редко перемещается медленно, обычно это довольно быстрые/резкие скачки, Медленно он перемещается только когда нужно проследить за медленно движущимся предметом.
Вот как раз на втором видео глаз либо телепортируется с морганием, либо быстро перемещается в случайную точку без моргания, либо медленно следит за предметом, который находится где-то вне поля зрения камеры. Конечная точка, режим движения и скорость пока выбираются случайно, без возможности планировать.
Пока слежения нет, но сделать автоматическое слежение за яркими предметами будет не сложно.
Спойлер
В планах есть, но не в ближайших.
Буквально вчера FoxyShadow доделал управляемые веки.
Кстати, а не хочешь заняться реализацией такого алгоритма?
Да, забыл упомянуть об этом. При «смене цели» моргания не происходит в некоторых случаях — как правило, когда новая цель находится близко в поле зрения от старой.
Однако, мои эксперименты показывают, что даже если реализовать по-простому, когда глаза моргают всегда при смене цели, то это выглядит намного более правдоподобно, чем если они никогда не моргают при смене цели, либо моргают лишь от случая к случаю.
Соглашусь. Главное, что мысль донёс.
Если получится быстро разобраться, то можно попробовать.
Пиши если вдруг будешь в МСК.