roboforum.ru

Технический форум по робототехнике.

Самоходная телега из 5.25 дисковода

Наше хобби — конструировать и программировать.
Демонстрация готовых роботов и устройств построенных своими руками.

Самоходная телега из 5.25 дисковода

Сообщение wrgcpp » 25 фев 2016, 00:48

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

Так робот выглядел сразу после постройки шасси и изготовления каких-никаких простеньких органов управления. В основу конструкции лёг старый CD-ROM дисковод, от которого осталась только металличесткая коробка, остальное было отправлено на помойку. Для робота были закуплены металлические мотор-редукторы на 6V 77об/мин, и колёса "Скала" из магазина dvrobot (не сочтите за рекламу). Аккумулятор я поставил свинцовый, на 6V, 3.3Ач, выбрал его из-за простоты зарядки и дешивизны, схему зарядки распаял прямо на силовом контроллере (ближняя плата на фото выше). Передний бампер сделан из старой аллюминиевой гардины, распиленной вдоль, недостающая часть днища спереди и задняя стенка вырезаны из текстолита. На задней крышке расположен разъем для зарядки и тумблер для включения.
задняя крышка.jpg

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

Затем на бампер в специальные "крепления" из текстолита были установлены ультразвуковые дальномеры HC-SR04, написана кое-какая логика для простейшего объезда препятствий. Робот стал более-мене нормально самостоятельно передвигаться по комнате. Так же я заказал новые большие колёса, чтобы увеличить клиренс.
с большими колёсами и свинцовым акб 1.jpg

с большими колёсами и свинцовым акб 2.jpg

В такой конфигурации клиренс существенно возрос, увеличилась и скорость, но возрос ток моторов, ощутимо упал момент. Впрочем, на ковре эта штука спокойно разворачивалась на месте.

Затем я заменил тяжелый свинцовый аккумулятор на самодельную батарею 2S из старых ноутбучных 18650. Сперва хотел позаимствовать идею Slom'a со шприцами, но потом прикупил в ближайшем магазине радиодеталей специально предназначенные для этого battery case. Без ручного вмешательства, правда, все равно не обошлось. Стандартные провода от держателей батарей годились разве что на помойку и были заменены на МГШВ 0.75. Выйгрыш в весе оказался просто колоссальный, робот перестал проваливаться в снег, и стал ехать даже по целине! Так же возросла и скорость, т.к. напряжение стало 7.4В против 6В.
самодельный 2S.jpg


Ультразвуковые дальномеры тоже зарекомендовали себя не с лучшей стороны - для замера нужен сложный код, само измерение занимает много времени, а при пониженной температуре, от 0 и ниже, они и вовсе сходили с ума - то не срабатывали на препятствие, то постоянно выдавали ложные срабатывания, и я заказал инфракрасные датчики SHARP GP2Y0A21. Они конечно не могут похвастаться таким диапазоном измеряемых значений, но зато код работы с ними предельно прост, т.к. они аналоговые.
ик датчики.jpg

ик датчики спереди.jpg

Эти датчики работают на холоде точно так же как и в помещении, а расстояния 80см мне вполне хватает, так как робот быстро не ездит.

силовой и ходовой контроллеры.jpg

Теперь об электронике. Вся электроника разделена на 3 части:
1) Силовой контроллер (сверху слева)
Он занимается зарядкой аккумулятора, мониторингом напряжения и отключением нагрузки когда аккумулятор разряжен. Также с помощью него можно узнать текущий заряд батареи, нажав на кнопку. Заряд отобразится с помощью импровизированного индикатора из 2х светодиодов. Зарядка построена на микросхеме MC34063, заряжать ей можно только свинцовый аккумулятор. Нагрузка коммутируется с помощью реле, управляет всем этим контроллер Attiny45.
2) Ходовой контроллер (сверху справа)
Эту роль выполняет Attiny2313. Занимается включением и выключением моторов, больше ничем не занимается) Получает команды от центрального контроллера по i2c и выполняет. Если в течение 5 секунд не пришло никаких команд, то отключает моторы. Команда представляет собой 4 байта - [направление левого мотора][скорость][направление правого мотора][скорость]. Умеет разгонять моторы плавно, чтобы сберечь мотор-редукторы. H-мост (точнее их два, на левую и на правую сторону) самопальный, состоит из реле на переключение (верхние ключи), и 2х N-канальных мосфетов (нижние ключи). Схема с реле предельно проста, не надо париться с открытием верхних P-канальных полевиков, из недостатков - щелчки при смене направления движения и меньшая долговечность. Шим заведен на затворы полевиков через вспомогательные транзисторы. Силовые ключи (IRLZ44N) вобще не греются, даже без радиаторов.
3) Центральный контроллер (зеленая плата внизу)
Запрявляет всем. Главный мозг - Atmega644P, на ней крутится вся логика, работа с датчиками, алгоритмы объезда препятствий и т.д. Отдает команды на движение ходовому контроллеру, выполняет сзять по bluetooth с компом. На плате есть два семисегментных индикатора, очень помогает при отладке алгоритмов и DIP-переключатель (храсная хреновина с рычажками), чтобы можно было менять какие нибудь параметры не перепрошивая контроллер. Сюда же в дальнейшем будет подключен GPS и компас для автономной навигации. Возможно, добавлю еще и акселерометр, чтобы не переворачиваться при наезде на высокое препятствие.

Программа для управления с компьютера еще до конца не доделана и пока что выглядит вот так
2016-02-25-013810_971x433_scrot.png


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

В планах:
* GPS и компас для навигации
* купить нормальный 2S аккумулятор
* акселерометр против переворачивания
* заменить bluetooth на NRF24L01+ с усилителем и внешней антенной, заявленная дальность до 1км в прямой видимости
* хотелось бы добавить видеокамеру для FPV
Аватара пользователя
wrgcpp
 
Сообщения: 52
Зарегистрирован: 22 янв 2015, 01:43
Откуда: Нижний Тагил
прог. языки: C, C++, Tcl

Re: Самоходная телега из 5.25 дисковода

Сообщение slom » 25 фев 2016, 11:56

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

возник вопрос какую функцию выполняют датчики, что то вроде защиты от дурака? чтоб в стены не врезался? или это автоматический режим?

насчет акума то я уже тоже поставил спец боксы под них но у меня не 2 акума а 8 и вам советую поставить еще 2 или 4 чтоб было в сумме 4-6шт, это продлит им жизнь.
Аватара пользователя
slom
 
Сообщения: 645
Зарегистрирован: 07 сен 2014, 19:29
Откуда: Севастополь
Skype: slom_3d
прог. языки: 3d max :)

Re: Самоходная телега из 5.25 дисковода

Сообщение wrgcpp » 26 фев 2016, 22:32

Датчики позволяют самостоятельно ориентироваться в пространстве в автоматическом режиме.
Аккум я хочу поставить вот такой, но к нему надо сразу зарядку покупать, что то типа Imax B6, и меня что-то пока жаба душит :) , все никак не могу решиться.
Аватара пользователя
wrgcpp
 
Сообщения: 52
Зарегистрирован: 22 янв 2015, 01:43
Откуда: Нижний Тагил
прог. языки: C, C++, Tcl

Re: Самоходная телега из 5.25 дисковода

Сообщение loox » 27 фев 2016, 01:10

Проблема с сонарами да и наверное есть проблема с ик - в их не очень удачном расположениию
Очень низко стоят - ложные срабатывания от поверхности пола(земли) Необходимо поднимать их выше
loox
loox
 
Сообщения: 326
Зарегистрирован: 26 мар 2008, 12:45

Re: Самоходная телега из 5.25 дисковода

Сообщение wrgcpp » 27 фев 2016, 07:06

В помещении все нормально работало, так что не думаю, что проблема в этом, а скорее в разной скорости звука при комнатной температуре и на холоде. Есть сонары с температурной компенсацией, но их цена сравнима с ценой на инфракрасные дальномеры, при сохранении всех недостатков простого сонара (долгий замер, сложный код). С ИК датчиками ложных срабатываний пока еще не замечено, ни в помещении, ни на улице.

Кстати, забыл упомянуть проблему с мертвыми зонами вблизи датчиков - если ножка стула или любой подобный предмет окажется между датчиками, то ее не видно вообще. Надо подумать о перекрестком расположении датчиков.
Аватара пользователя
wrgcpp
 
Сообщения: 52
Зарегистрирован: 22 янв 2015, 01:43
Откуда: Нижний Тагил
прог. языки: C, C++, Tcl

Re: Самоходная телега из 5.25 дисковода

Сообщение vektors » 13 мар 2016, 18:13

Видео бы посмотреть))) как телега в работе.
vektors
 
Сообщения: 1
Зарегистрирован: 13 мар 2016, 18:09
Откуда: Москва
ФИО: Егор Серафимыч


Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16