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

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


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

Сейчас беспилотник Олега умеет исследовать помещение, строить его карту и находить живые объекты (людей, кошек или собак). После того, как устройство обнаружило объект, оно начинает за ним следовать. При желании беспилотником можно управлять с джойстика самостоятельно — видя картинку с камеры и схему помещения, построенную на основе данных с лидара. Также можно добавлять нужные вам алгоритмы и поведение через написание кода на Python прямо в браузере.

Но такая версия устройства появилась не сразу. Сначала нужно было провести эксперименты с подручными средствами, написать алгоритмов, исправить багов, добавить датчики. Подробнее об истории создания мини-беспилотника: https://habr.com/ru/post/542024

Основные компоненты ?

Если вы хотите собрать похожее устройство, вам понадобятся:

— одноплатный компьютер Nvidia Jetson Nano Developer Kit и система питания — для работы алгоритмов управления, взаимодействия с датчиками и распознавания;

— RC-машинка Remo Hobby Smax (RH1635) — для перемещения беспилотника;

— контроллер двигателя и PWM/servo модуль PCA9685 (ШИМ) — для соединения машинки и компьютера;

— однолучевой лидар — для того, чтобы знать, где находятся препятствия;

— камера — для обнаружения и распознавания объектов;

— датчики Холла и IMU — для того, чтобы понимать, куда заехала машинка, и строить трек перемещения.

Кроме этого, потребуются разъёмы, провода, дополнительные сенсоры, карта памяти и Wi-Fi-модуль, конвертеры, инструменты, руки, время и желание. 3D-принтер тоже пригодится, но попробовать можно и без него — первые версии своего беспилотника Олег делал из картона, дерева и обрезков пластика.

Подробный список всех компонентов (со ссылками) есть на GitHub: https://github.com/jumpercc/ballsbot

Сборка ?

Вкратце сборка беспилотника выглядит так:

— печатаем все необходимые детали на 3D-принтере;

— снимаем с машинки корпус, заменяем контроллер двигателя на тот, которым можно управлять по проводу;

— ставим проставки в амортизаторы, меняем передний бампер на такой же как задний;

— ставим на карту Jetson Wi-Fi модуль с антеннами, соединяем Jetson с системой питания;

— склеиваем две нижние части корпуса (только нижние, без крышки);

— прикручиваем Jetson с системой питания к корпусу, после чего прикручиваем ШИМ;

— ставим датчики Холла на крепление и приклеиваем к машинке и устанавливаем магнит на ось машинки (можно в обратном порядке);

— соединяем корпус с машинкой, прикручиваем к корпусу камеру и соединяем её с картой Jetson;

— прикручиваем антенны;

— соединяем лидар с крышкой;

— соединяем крышку и корпус с машинкой;

— паяем провода и разъёмы, соединяем все электронные компоненты проводами, добавляем IMU и опционально датчики расстояния.

Дальше нужно установить необходимые ОС и софт на SD-карту, настроить, подтюнить, откалибровать — и ваш беспилотник готов :)

Подробная видеоинструкция по сборке и тестированию устройства: https://www.youtube.com/playlist?list=PLYvKlIOUsVXJjlYiZFUibLezPqPUq2qsj

Чтобы спроектировать такой беспилотник, Олегу потребовались:

— опыт программирования на Python и C++;

— навыки проектирования в CAD;

— понимание ML (как минимум нужно разбираться в нейронных сетях для распознавания объектов на картинках);

— умение паять и базовые знания в электротехнике;

— знание алгоритмов и компонентов беспилотников, умение их скомпоновать и реализовать/найти готовую реализацию.

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


Источник: www.youtube.com

Комментарии: