Беспроводной танк своими руками Cyber-WRT

DSC_0300Решил объединить в танке систему Cyber-WRT. Что это такое и про ее модули можете почитать вот тут. А я расскажу что и как я соединил и куда что залил, что бы объединит во едино минироутер TP-Link TL-WR703N, USB2.0 хаб, кард ридер, звуковую карту, усилитель, драйвер H-Bridge HG7881 для двух ДПТ, две сервомашинки, веб камеру и кучу светодиодов. Думаете я не вместил это все в крошечный танк? Смотрите дальше:

Добрый день.
Хочу рассказать вам о моем проекте, который я делал на досуге, да бы занять себя чем нибудь, за одно пополнить навыки робототехники и работы с микроконтроллерами. Поясню, тандем роутера с его достаточно производительным процессором и памятью, которую можно расширить с помощью карт памяти, подсоединик к ней всякую всячину, с микроконтроллерами с многочисленными выводами, к примеру с платами Ардуино — необходимость для проектирования систем «умный Дом», на что направлено все мое свободное от работы время.

И так, что я делал между вот этим:

DSC_0261

Делал подвесной потолок и вот этим:

BP Azerbaijan:

мое основное занятие, мой хлеб!

Вот это:

DSC_0291
Что это такое.

К празднику «Новый Год» наш Шахта Баба, то есть Я 🙂 принес детям под елочку танки. Два танка в тандеме с системами инфракрасной стрельбы, достаточно увлекательные игрушки, первые несколько дней пульты вообще не сходили с детских рук, в том числе и с рук самого большого ребенка семьи, то есть с моего :). Но как и судьба многих десятков игрушек, вскоре пульты перестали работать, а игрушечные вездеходы перестали ходить. Все дело в платах (у одной сгорел контроллер, у другой отказал пульт), то ли специально игрушки так нынче выпускают, то ли еще что с ними дети натворили, не знаю.
Короче, выкидывать игрушки я не стал, а решил вдохнуть в них новую жизнь.
Гусеницы вообще очень полезны в робототехнике!
Схема, по которой все соединяется:

drawing

вот с чего все началось:

DSC_0263

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

DSC_0268

DSC_0283 DSC_0262

DSC_0264

DSC_0265

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

DSC_0273

DSC_0271

DSC_0287

Для того, что бы подсоединить двигатель постоянного тока к драйверу сервомашинки, нужно отсоединить переменный резистор и впаять вместо нее 2 резистора номиналлом в 2,5КОм, это приблизительный угол в 90 градусов, если считывать положение сервы микроконтроллером, далее подав команду повернуть серво на 0, либо на 180 градусов мы заставим крутиться двигатель то в одну, то в другую сторону, притом изменив угол и время поворота можно регулировать углы поворота мачты программно через Ардуинку. Подробнее смотрите на видео  и в скетче ниже.

DSC_0277

Ну вот и роутер подсоединили с начинкой хаба, но честно говоря при виде всего в соединенном состоянии, мне на миг стало страшно, появились сомнения, что все это можно будет вообще впихнуть в малюсенький танк… DSC_0276

DSC_0288

вот так страшно выглядело все в сборе, то есть все подсоединенное… DSC_0267

DSC_0291

еле все засунув кое как внутрь примерил верхнюю броню, естественно она не закрывалась и зазор оставался где то в сантиметр )))

DSC_0286

Tест инфракрасного светодиода, делал фотоаппаратом телефона, так как инфракрасный свет не видем для человеческого глаза, а электронные глаза их видят как никак хорошо!

DSC_0283

Пришлось прикрутит выключатель на одну из линий UART конкретно на ТХ с роутера к RХ Ардуино, так как при соединенной линии последовательной коммуникации Ардуинка наотрез отказывалась прошиваться внешним программатором FTDI.

DSC_0298

вот так выглядит коннектор FTDI и переключатель, назовем его «переключатель программатора Ардуино» 🙂



DSC_0284
DSC_0289

А вот так выглядит мое рабочее пространство 🙂

DSC_0282

Программирование Ардуинки, заливаю простой скетч мигания светодиода, так как программа управления танка еще не готова…

DSC_0297

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

DSC_0280

вот и АКБ, это 4 последовательно соединенных никель-кадмиевых аккумулятора типа АА в сумме дающих 4.8Вольта, достаточно, но не очень емко, как оказалось позже, танк с продвинутой начинкой работает от них лишь от силы минут 15…но для тестов достаточно.

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

DSC_0325Думаю не плохо получилось 🙂 …

Плата в броне — эта тот самый USB2.0 хаб с отрезанными 2мя раземами USB, 3й не использованный я решил оставить на плате, в будущем могу вырезать для него место в пластике и использовать для соединения внешнего usb жесткого диска, к примеру, для хранения всякой всячины, и подсоединить его при помощи модуля NAS в интерфейсе роутера Cyber-WRT. Вообще не танк получился а какая то «мультиварка» ))))))

Вот и видео танка в работе:


Скетч для Ардуино:

Arduino_Vcc-master

Как продолжение проекта планирую как нибудь встроить литий ионный источник питания, так как танку не хватает емкости АКБ, где то на 5А/ч, вот такие АКБ как раз помещаются в днище:

DSC_0326

Беспроводной зарядки, ну к примеру такой:

$_12

Прикрутить 4 3мм светодиода впереди танка, либо мощьный 5и миллиметровый светодиод в мачту для подсветки в темноте, так как у веб камеры она отсутствует,
И счетчика шагов для определения и навигации на станцию подзарядки, вот такой:

$_12 (1)
Спасибо за внимание и до связи.

Беспроводной танк своими руками Cyber-WRT: 23 комментария

  1. Иван

    хорошая переделка) но литий я бы не стал ставить, лучше никель от того же GP? литию балансир нужен между банками, срок службы маленький, правильно заряжать надо и пожароопасны они(особенно если без присмотра и китайские), а кадмиевые спокойненько разрядятся. случай на работе был литиевая банка(китайская) размера D бабахнула сама по себе ночью и прошила на сквозь гипсобетонную стенку.
    И) случайно у вас нет скаченной(это когда уже после установки на роутер) прошивки КиберВРТ особенно интересует папка WWW (ну и остальные), просто сам сижу на OR-WRT и ковыряю ее периодически. хотелось бы глянуть на вашу.

  2. рустем

    привет всем. помогите пожалуйста. прошил ваш скетч. при включении ПОСТОЯННО начинает крутится 1 мотор. подробнее здесь на видео. помогите советом пожалуйста почему так происходит! причем работает только при подключении RX-RX TX-TX.
    По другому даже так не работает. прошу совета куда копать. роутер nexx wt30h. контроллер — ардуино нано.

    1. elik745ielik745i Автор записи

      Еще проверь по схеме и в скече есть некоторые ошибки в подключении, измени в скетче ножки:

      #define HG7881_A_IA 12 // D12 —> Motor A Input A —> MOTOR A +
      #define HG7881_A_IB 11 // D11 —> Motor A Input B —> MOTOR A —
      #define HG7881_B_IA 10 // D10 —> Motor B Input A —> MOTOR B +
      #define HG7881_B_IB 9 // D9 —> Motor B Input B —> MOTOR B —

      #define tiltServopin 7 //tilt servo attached to pin 7
      #define panServopin 8 //pan servo attached to pin 8

      либо попробуй физически сменить ножки на схеме на те, что прописаны в скетче…

  3. рустем

    спасибо! с исправленным кодом заработало! НО есть косяк-
    при одновременном подключении к роутеру и ардуины и камеры , как только жмешь какую нибудь кнопку на сайте (вперед, назад, влево, вправо) сразу запарывается камера(изображение просто застывает и все)
    тоесть как только хочешь чтобы робот поехал и показывал видео, видео просто застывает!
    что скажете ? В чем может быть проблема?

    1. elik745ielik745i Автор записи

      Это изза скачков напряжения, H-bridge сильно сажает напряжение. Попробуйте использовать широтноимпульсное управление и тем самым плавно запускать двигатели + установите конденсаторы в цепь питания роутера, две банки по 3000мкф 10вольт параллельно должно хватить. Код плавного запуска analogWrite(a, b), где а — PWM пин, b- от 50 до 254х с промежутком 50 миллисекунд. Код обновлю позже…

      1. рустем

        спасибо, попробую поставить электролиты…
        просто судя по вашей схеме наверху, у Вас таких проблем не было и никаких банок вы не ставили? быть может имеет значение источник питания? у меня в его роли повербанк самодельный из банок 18650 (6 шт паралельно )
        а код да, пожалуйста разместите здесь, а то сам не доеду до него((((
        и еще вопрос почему у вас на схеме 2 роутера?

      2. рустем

        и если так же виновен драйвер поможет ли его замена например на такой http://ru.aliexpress.com/item/Free-Shipping-1pcs-lot-Motor-Drive-Shield-L293D-Duemilanove-Mega-UNO-100-new-original/2036219938.html?spm=2114.13010608.0.142.U7SKEw
        или в принципе они одинаковы?
        и если даже применить этот наверно надо будет переписывать код?

        1. elik745ielik745i Автор записи

          Код обновил, если понадобится полная мощность там надо будет заменить 150 на 250 в нижней части кода. Про мостик, не спешите с этим, они практически все одинаковые. Еще проверьте платы защщиты литиевых акб, у меня с ними проблема, они не расчитаны на пусковые нагрузки двигателей. Попробуйте напрямую соединить их к схеме, если будут успехи, поставьте 2 схемы параллельно, либо более мощную схему защиты акб — должно помочь. Да перед заливкой скетча еще раз проверьте пины, если нужно поменяйте их на свои в скетче, те,что PWM должны быть с шиотноимпульсной модуляцией, эт уже по датащиту на ваш ардуино…

          1. рустем

            ну судя по комментарию в коде Вы как раз писали скетч для ардуино нано?
            у меня вот такой http://ru.aliexpress.com/item/Freeshipping-Nano-3-0-controller-compatible-with-arduino-nano-CH340-USB-driver-with-CABLE-NANO-V3/2035514330.html?detailNewVersion=&spm=2114.13010608.0.76.J8UtKs
            контроллер(только на чипе FTDI), я так понимаю ножки с PWM в скетче оставляю как у Вас в коде выше?

          2. рустем

            в общем провел кучу тестов и выявил следующее.
            от лития в итоге ну НИКАК не хочет работать(видео запарываеся)
            пробовал как Вы советовали ставить электролит. соединял вот так
            http://s019.radikal.ru/i608/1607/b6/c368c6fbdecd.jpg
            преобразователь на mt3608
            потом подал питание на роутер от зарядника от моего телефона -выдает 5.2В 2А. и не поверите с ним видео не запарывается! и робот едет! получается нужно хорошее и мощное питание для робота??
            я очень удивлен как Вы смогли завести его со слабыми ni-kd батареями….
            тоже что ли их купить и попробовать?

  4. elik745ielik745i Автор записи

    Снимите плату защиты с литийионных акб и напрямую питайте, как опцию ставьте инвертер с литийионного питания 3.3-4.2в на 5.2вольт.

    1. рустем

      ну на фото выше я показал, что так и питаю))) без всяких плат защиты. и инвентор на фото тоже есть))
      Вы сами в итоге СЕЙЧАС каким источником питания пользуетесь?
      или все теми же 4 акб ni-cd?
      сами значит не решили проблему питания li-ion?

      1. elik745ielik745i Автор записи

        Я занят другим сейчас. Поставьте электролиты и питайте никельметаллогидридными либо никелькадмиевыми, с литийионными вероятно проблема…

        1. рустем

          понятно.тогда просьба, если найдете решение как питать литий ионом отпишите пожалуйста здесь решение!!!
          заранее спасибо!!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

wp-puzzle.com logo