По многочисленным просьбам я решил описать процесс создания вот такого робота с камерой на гусеничном шасси и управлением по bluetooth с помощью джойстика.

Я всегда мечтал создать робота, которым можно управлять с помощью компьютера и смотреть за его перемещениями от первого лица.
Весь процесс я условно разделил на три части:
1. Сборка робота
2. Программирование боротового микроконтроллера
3. Программирование управления с ПК
Полагаю, что наиболее интересной эта тема будет тем, кто хотел бы построить такого робота, но не хватает знаний в отдельных моментах. (Тем, кто хорошо разбирается в роботостроении, электронике и программировании, ничего нового я не открою). Поэтому рассказывать буду максимально подробно и просто.
Вообще говоря, робота можно купить и готового, но
-во-первых это не так интересно — сам процесс создания робота своими руками доставляет огромное удовольствие
-во-вторых при покупке готового робота переделать его под свои интересы часто довольно сложно, если вообще возможно
-и наконец, при грамотном подходе, самостоятельно сделать робота может оказаться дешевле.
Мы будем использовать максимально дешевые, но готовые узлы, потому что сборка с нуля не каждому интересна, более сложна и рискует надоесть затянувшемся на месяцы процессом :).
Если робота хочется не просто заполучить на поиграться, а именно сделать самому, тогда поехали!
Робот самостоятельно не принимает решений, то есть это управляемое с ПК шасси, которое выполняет команды и передает видеосигнал. Однако, доработать его до самостоятельного робота не составляет никакого труда — нужно лишь добавить сенсоры и дописать логику бортового компьютера. Платформа на это рассчитана.
Нам понадобится:
Для гусеничного шасси
1. Двухмоторная коробка с редуктором — Tamiya Twin Motor Gearbox (TAM70097)

2. Гусеницы и катки с осями — Tamiya Track and Wheel Set (TAM70100)

3. Платформы и крепеж — Tamiya Universal Plate Set (2) (TAM70157)

из этого дефицитом в России является только пункт 2.
Купить остальное можно в Терраэлектронике (70097 — 520р, 70157 — 385р)
Или в официальном магазине Tamiya. Если будете покупать в нем, то берите гусеничное шасси (630р) и коробку (390р). Вам останется про запас коробка с одним мотором.
Дело в том, что нам нужна коробока с двумя моторами, чтобы робот мог ехать не только прямо, но и поворачивать, раздельно управляя гусеницами.
Поскольку в Москве купить все в одном месте не удалось, а бегать и искать не хотелось, то я все это заказал на ebay у единственного продавца, который по нормальной цене доставляет в Россию. Обошелся комплект примерно в $37.5 с доставкой.
Также можно найти эти запчасти на pololu.com. Там подороже и не всегда в наличии.
Вместо платформы с отверстиями вполне можно использовать кусок фанеры, а для крепежа металлический конструктор, который продается в детском мире примерно за 200-400 рублей (есть несколько наборов).

В общем, самое главное — это гусеницы и мотор-редукторы.
Бортовая электроника
1. Arduino Duemillanove/ Freeduino 2009 — мозг нашего робота —

на ebay от $17.60.
Я брал на freeduino.ru, довольно давно и за 950р.
Для робота вполне достаточно на базе Atmega168 (дешевле чем Atmega328P), если вы не собираетесь писать очень навороченную логику робота или использовать Arduino как и я для других экспериментов, которым 16кБ флэш памяти может не хватить.
2. Силовой модуль Motor Shield V2 или V3 для управления моторами

На ebay от $10.5, старая версия и без гребенок для установки следующего этажа шилдов.
на Freeduino.ru от 600р в виде конструктора до 900 р в собранном виде. Советую v3 — она более гибкая.
3. Sensor shield V4 — удобный модуль для подключения сенсоров и сервоприводов. Если вас не пугает пучок проводов, то он нафиг не нужен. Я купил его для экспериментов, поэтому воткнул для удобства.

порядка $8 на ebay
4. SmartBluetooth модуль. Понадобится для связи с ПК или ноутбуком.

на ebay от $9.9. Я брал давно и мне он обошелся аж в $23
5. Bluetooth dongle — если будете управлять с ПК и Bluetooth интерфейса в нем нет, то нужно купить.
цена — $2.7
Итого $40.7 если обойтись без Sensor shield, но с bluetooth dongle для ПК.
Нам также понадобится питание для Arduino и моторов. Вы можете воспользоваться обычными АА батарейками в таком вот отсеке, купив его на рынке или в ЧипИДипе, если очень срочно.

«RPMS & AA»
или 9В батарейкой типа «Крона».
Я предпочитаю компактные и более удобные LiPoly аккумуляторы:

или 2 LiIon элемента 18650, соединенных последовательно.
Этого комплекта достаточно, чтобы сделать робота с базовым функционалом, поэтому я бы предложил в этом месте сделать паузу, выбрать где и что вы будете заказывать, сделать заказы или съездить по магазинам, а пока заказ будут доставлять, заняться видеоподсистемой.
При заказе в основном из китая все компоненты вы получите примерно через 2-3 недели и обойдется все в $80-100, в зависимости от выбранного продавца или вашего желания поторговаться и сэкономить, может быть и дешевле. Если покупаете несколько товаров у одного продавца, просите комбинировать доставку, на этом можно сэкономить. Так называемая «бесплатная доставка» (free shipping) просто включена в стоимость и хороша, если покупаете один предмет.
Собираем шасси
Комплект Tamiya 70100 идет с подробной инструкцией. Аккуратно вырезаем кусачками или канцелярским ножом резиновые гусеницы и катки, отделяя от литников, собираем и крепим с помощью винтиков М3х10 к фанерной площадке или если купили Tamiya universal plate set, то комплектными клинышками, они многоразовые, так что ничего страшного, если сначала что-то не туда воткнете.
Затем собираем коробку моторов с редукторами TAM70097. У нее есть 2 варианта передаточных чисел. 58:1 ездит очень и очень шустро, но моторчики на малых оборотах не тянут и жалобно стонут, а после того, как нагрузим платформу, могут вообще еле ворочаться. Рекомендую собирать в варианте 201:1, так наш «танк» не будет убегать из поля зрения и будет двигаться более плавно. Правда шуму от бешено вращающихся шестерней будет побольше. Ведущие шестерни шасси насаживаем на шестигранные оси коробки.
Для проверки работоспособности достаточно подать питание от 2 батареек на моторчики просто конснувшись проводками контактов мотора. Теперь нужно подпаять по паре проводков к моторчикам. Сантиметров по 10-15 будет достаточно.
Затем с помощью деталей от конструктора я закрепил вторую площадку для крепления электроники. В принципе, можно и в один этаж делать, просто там места маловато и работать не очень удобно, но вполне возможно.
На второй этаж винтиками М3х10 крепим Arduino/Freeduino (она не совсем совпадает по отверстиям и становится чуть-чуть по диагонали). Вторым этажом вставляем MotorShield. Через отверстия в площадке пропускаем провода от моторчиков и крепим провода в порт М3 и М4 — крайние винтики, средний остается неиспользованным (он для шаговых двигателей). Полярность подключения моторов значения пока не имеет, ее ��отом можно поменять или задать программно, так что не бойтесь перепутать.
Bluetooth модуль пока просто прикиньте куда воткнуть или прикрепите к верхнему этажу канцелярской резинкой. Я его даже распаковывать не стал — вспененная упаковка послужит ему механической защитой, а заодно и не позволит замкнуть контакты случайно.
Получится примерно вот такой бутерброд:

«RC Tank chassis»
Откройте полноразмерную картинку, чтобы рассмотреть получше что и как соединено, если возникли трудности со сборкой и подключением. Arduino крепите USB портом к краю платформы, чтобы удобнее потом было подключать кабель и программировать не снимая с робота.
Работы всего на пару часов, если делать не торопясь.
Видеоподсистема
Чтобы покататься с изображением от первого лица нам понадобится миниатюрная видеокамера, радиопередатчик (трансмиттер) и приемник (ресивер).
Вариантов огромное множество. В том числе дойти до рынка и купить в магазине шпионских штучек или аппаратуры видеонаблюдения китайскую радиокамеру. Обойдется скорее всего в 2-4 тыр вместе с ресивером.
Но гораздо дешевле заказать из Китая.
Рекомендую брать на 1.2 ГГц, а не 2.4ГГц, чтобы избежать помех bluetooth модулю и WiFi, работающим на 2.4ГГц
Например вот такой комплект:

обойдется чуть больше $30. Есть и дешевле, в зависимости от камеры в комплекте.
На ebay можно купить точно такое же или с камерой в металлическом корпусе как на картинке с коробки.
Качество изображения у всех этих CMOS камер весьма так себе (380ТВЛ и те довольно мыльные и с низким динамическим диапазоном и высокими шумами при слабом освещении). Поэтому я заказал на hobbyking.com камеру на ПЗС матрице Sony с разрешением 420ТВЛ и чувствительностью получше, что позволяет даже под столом без дополнительной подсветки видеть что проиходит.

А также крепление для нее с поворотом и наклоном:

Как гласит надпись на картинке — сервоприводы в комплект не входят, поэтому заказываем недорогие 9граммовые сервы. Нам понадобится 2 штуки, 3я останется про запас, если сломаем.
У меня камера от 9В работать не хочет, поэтому приходится питать ее от отдельного аккумулятора на 11.1В.
Приемник и передатчик использовал из недорогого комплекта, показанного выше. (Передатчик пробовал более мощный — на 800мВт, но он прилично греется, громоздкий с радиатором и мощность такая, что вызывает наводки на сервоприводах камеры).
Можно подключить ресивер к телевизору, но управлять с компьютера, а смотреть в телевизор не слишком удобно (разве что купить портативный). Поэтому нам понадобится устройство видеозахвата.
Благо стоит оно недорого, очень компактное, питается от USB порта, все кабели и софт в комплекте:

Из мелочей полезно иметь выключатель, чтобы не мучаться с выключением, выдергивая коннектор питания и комплект коннекторов male и female
Вот собственно и все, что нам понадобится.
Вариантов где купить и как сэкономить предостаточно, есть и другие, но статья получится бесконечной, если пытаться перечислить все.
Собирать все это довольно увлекательно и совсем не так сложно, как может показаться на первый взгляд.
Но окончательной сборкой и настройкой мы займемся в следующей части, а пока нужно купить все необходимое и собрать шасси. :)
Удачных покупок!
UPD Ко мне не раз обращались по поводу стоимости.
Чтобы не было недоразумений, сведу воедино:
1. Шасси — я купил на ebay за $37.5с доставкой. В Москве все компоненты есть в Terraelectronica:
70097 (мотор-редукторная коробка) — 514р
70157 (2 платформы+крепеж) — 381р
70100 (гусеницы и колеса) — 571р
Итого шасси в Москве 1466 р (~$46-$50)
2. Электроника — $40.7 если обойтись без Sensor shield, но с bluetooth dongle для ПК. Все из Китая.
3. Видеоподсистема — от $27 на DealExtreme.
Итого полный комплект от $105 (все из Китая) до $118 (шасси в Москве).
Батарейки отдельно, вариантов питания слишком много, чтобы здесь описывать.
UPD 2 Для зарядки литий-ионных и литий-полимерных аккумуляторов нужна соответствующая зарядка — обычный блок питания не подойдет.
На хоббикинге есть целый раздел зарядников: www.hobbyking.com/hobbyking/store/__216__408__Battery_Chargers_Acc_-Battery_Chargers.html
Сам я пользуюсь таким: HobbyKing ECO6 50W 5A Balancer/Charger w/ accessories. Ему нужен источник питания на 12В ок 5 А, на HK такой есть, можно и у нас купить на радиорынке.
Все ссылки даны в статье.
Часть 2
Часть 3

Я всегда мечтал создать робота, которым можно управлять с помощью компьютера и смотреть за его перемещениями от первого лица.
Весь процесс я условно разделил на три части:
1. Сборка робота
2. Программирование боротового микроконтроллера
3. Программирование управления с ПК
Полагаю, что наиболее интересной эта тема будет тем, кто хотел бы построить такого робота, но не хватает знаний в отдельных моментах. (Тем, кто хорошо разбирается в роботостроении, электронике и программировании, ничего нового я не открою). Поэтому рассказывать буду максимально подробно и просто.
Вообще говоря, робота можно купить и готового, но
-во-первых это не так интересно — сам процесс создания робота своими руками доставляет огромное удовольствие
-во-вторых при покупке готового робота переделать его под свои интересы часто довольно сложно, если вообще возможно
-и наконец, при грамотном подходе, самостоятельно сделать робота может оказаться дешевле.
Мы будем использовать максимально дешевые, но готовые узлы, потому что сборка с нуля не каждому интересна, более сложна и рискует надоесть затянувшемся на месяцы процессом :).
Если робота хочется не просто заполучить на поиграться, а именно сделать самому, тогда поехали!
Робот самостоятельно не принимает решений, то есть это управляемое с ПК шасси, которое выполняет команды и передает видеосигнал. Однако, доработать его до самостоятельного робота не составляет никакого труда — нужно лишь добавить сенсоры и дописать логику бортового компьютера. Платформа на это рассчитана.
Нам понадобится:
Для гусеничного шасси
1. Двухмоторная коробка с редуктором — Tamiya Twin Motor Gearbox (TAM70097)

2. Гусеницы и катки с осями — Tamiya Track and Wheel Set (TAM70100)

3. Платформы и крепеж — Tamiya Universal Plate Set (2) (TAM70157)

из этого дефицитом в России является только пункт 2.
Купить остальное можно в Терраэлектронике (70097 — 520р, 70157 — 385р)
Или в официальном магазине Tamiya. Если будете покупать в нем, то берите гусеничное шасси (630р) и коробку (390р). Вам останется про запас коробка с одним мотором.
Дело в том, что нам нужна коробока с двумя моторами, чтобы робот мог ехать не только прямо, но и поворачивать, раздельно управляя гусеницами.
Поскольку в Москве купить все в одном месте не удалось, а бегать и искать не хотелось, то я все это заказал на ebay у единственного продавца, который по нормальной цене доставляет в Россию. Обошелся комплект примерно в $37.5 с доставкой.
Также можно найти эти запчасти на pololu.com. Там подороже и не всегда в наличии.
Вместо платформы с отверстиями вполне можно использовать кусок фанеры, а для крепежа металлический конструктор, который продается в детском мире примерно за 200-400 рублей (есть несколько наборов).

В общем, самое главное — это гусеницы и мотор-редукторы.
Бортовая электроника
1. Arduino Duemillanove/ Freeduino 2009 — мозг нашего робота —

на ebay от $17.60.
Я брал на freeduino.ru, довольно давно и за 950р.
Для робота вполне достаточно на базе Atmega168 (дешевле чем Atmega328P), если вы не собираетесь писать очень навороченную логику робота или использовать Arduino как и я для других экспериментов, которым 16кБ флэш памяти может не хватить.
2. Силовой модуль Motor Shield V2 или V3 для управления моторами

На ebay от $10.5, старая версия и без гребенок для установки следующего этажа шилдов.
на Freeduino.ru от 600р в виде конструктора до 900 р в собранном виде. Советую v3 — она более гибкая.
3. Sensor shield V4 — удобный модуль для подключения сенсоров и сервоприводов. Если вас не пугает пучок проводов, то он нафиг не нужен. Я купил его для экспериментов, поэтому воткнул для удобства.
порядка $8 на ebay
4. SmartBluetooth модуль. Понадобится для связи с ПК или ноутбуком.

на ebay от $9.9. Я брал давно и мне он обошелся аж в $23
5. Bluetooth dongle — если будете управлять с ПК и Bluetooth интерфейса в нем нет, то нужно купить.
цена — $2.7Итого $40.7 если обойтись без Sensor shield, но с bluetooth dongle для ПК.
Нам также понадобится питание для Arduino и моторов. Вы можете воспользоваться обычными АА батарейками в таком вот отсеке, купив его на рынке или в ЧипИДипе, если очень срочно.

«RPMS & AA»
или 9В батарейкой типа «Крона».
Я предпочитаю компактные и более удобные LiPoly аккумуляторы:

или 2 LiIon элемента 18650, соединенных последовательно.
Этого комплекта достаточно, чтобы сделать робота с базовым функционалом, поэтому я бы предложил в этом месте сделать паузу, выбрать где и что вы будете заказывать, сделать заказы или съездить по магазинам, а пока заказ будут доставлять, заняться видеоподсистемой.
При заказе в основном из китая все компоненты вы получите примерно через 2-3 недели и обойдется все в $80-100, в зависимости от выбранного продавца или вашего желания поторговаться и сэкономить, может быть и дешевле. Если покупаете несколько товаров у одного продавца, просите комбинировать доставку, на этом можно сэкономить. Так называемая «бесплатная доставка» (free shipping) просто включена в стоимость и хороша, если покупаете один предмет.
Собираем шасси
Комплект Tamiya 70100 идет с подробной инструкцией. Аккуратно вырезаем кусачками или канцелярским ножом резиновые гусеницы и катки, отделяя от литников, собираем и крепим с помощью винтиков М3х10 к фанерной площадке или если купили Tamiya universal plate set, то комплектными клинышками, они многоразовые, так что ничего страшного, если сначала что-то не туда воткнете.
Затем собираем коробку моторов с редукторами TAM70097. У нее есть 2 варианта передаточных чисел. 58:1 ездит очень и очень шустро, но моторчики на малых оборотах не тянут и жалобно стонут, а после того, как нагрузим платформу, могут вообще еле ворочаться. Рекомендую собирать в варианте 201:1, так наш «танк» не будет убегать из поля зрения и будет двигаться более плавно. Правда шуму от бешено вращающихся шестерней будет побольше. Ведущие шестерни шасси насаживаем на шестигранные оси коробки.
Для проверки работоспособности достаточно подать питание от 2 батареек на моторчики просто конснувшись проводками контактов мотора. Теперь нужно подпаять по паре проводков к моторчикам. Сантиметров по 10-15 будет достаточно.
Затем с помощью деталей от конструктора я закрепил вторую площадку для крепления электроники. В принципе, можно и в один этаж делать, просто там места маловато и работать не очень удобно, но вполне возможно.
На второй этаж винтиками М3х10 крепим Arduino/Freeduino (она не совсем совпадает по отверстиям и становится чуть-чуть по диагонали). Вторым этажом вставляем MotorShield. Через отверстия в площадке пропускаем провода от моторчиков и крепим провода в порт М3 и М4 — крайние винтики, средний остается неиспользованным (он для шаговых двигателей). Полярность подключения моторов значения пока не имеет, ее ��отом можно поменять или задать программно, так что не бойтесь перепутать.
Bluetooth модуль пока просто прикиньте куда воткнуть или прикрепите к верхнему этажу канцелярской резинкой. Я его даже распаковывать не стал — вспененная упаковка послужит ему механической защитой, а заодно и не позволит замкнуть контакты случайно.
Получится примерно вот такой бутерброд:

«RC Tank chassis»
Откройте полноразмерную картинку, чтобы рассмотреть получше что и как соединено, если возникли трудности со сборкой и подключением. Arduino крепите USB портом к краю платформы, чтобы удобнее потом было подключать кабель и программировать не снимая с робота.
Работы всего на пару часов, если делать не торопясь.
Видеоподсистема
Чтобы покататься с изображением от первого лица нам понадобится миниатюрная видеокамера, радиопередатчик (трансмиттер) и приемник (ресивер).
Вариантов огромное множество. В том числе дойти до рынка и купить в магазине шпионских штучек или аппаратуры видеонаблюдения китайскую радиокамеру. Обойдется скорее всего в 2-4 тыр вместе с ресивером.
Но гораздо дешевле заказать из Китая.
Рекомендую брать на 1.2 ГГц, а не 2.4ГГц, чтобы избежать помех bluetooth модулю и WiFi, работающим на 2.4ГГц
Например вот такой комплект:

обойдется чуть больше $30. Есть и дешевле, в зависимости от камеры в комплекте.
На ebay можно купить точно такое же или с камерой в металлическом корпусе как на картинке с коробки.
Качество изображения у всех этих CMOS камер весьма так себе (380ТВЛ и те довольно мыльные и с низким динамическим диапазоном и высокими шумами при слабом освещении). Поэтому я заказал на hobbyking.com камеру на ПЗС матрице Sony с разрешением 420ТВЛ и чувствительностью получше, что позволяет даже под столом без дополнительной подсветки видеть что проиходит.

А также крепление для нее с поворотом и наклоном:

Как гласит надпись на картинке — сервоприводы в комплект не входят, поэтому заказываем недорогие 9граммовые сервы. Нам понадобится 2 штуки, 3я останется про запас, если сломаем.
У меня камера от 9В работать не хочет, поэтому приходится питать ее от отдельного аккумулятора на 11.1В.
Приемник и передатчик использовал из недорогого комплекта, показанного выше. (Передатчик пробовал более мощный — на 800мВт, но он прилично греется, громоздкий с радиатором и мощность такая, что вызывает наводки на сервоприводах камеры).
Можно подключить ресивер к телевизору, но управлять с компьютера, а смотреть в телевизор не слишком удобно (разве что купить портативный). Поэтому нам понадобится устройство видеозахвата.
Благо стоит оно недорого, очень компактное, питается от USB порта, все кабели и софт в комплекте:

Из мелочей полезно иметь выключатель, чтобы не мучаться с выключением, выдергивая коннектор питания и комплект коннекторов male и female
Вот собственно и все, что нам понадобится.
Вариантов где купить и как сэкономить предостаточно, есть и другие, но статья получится бесконечной, если пытаться перечислить все.
Собирать все это довольно увлекательно и совсем не так сложно, как может показаться на первый взгляд.
Но окончательной сборкой и настройкой мы займемся в следующей части, а пока нужно купить все необходимое и собрать шасси. :)
Удачных покупок!
UPD Ко мне не раз обращались по поводу стоимости.
Чтобы не было недоразумений, сведу воедино:
1. Шасси — я купил на ebay за $37.5с доставкой. В Москве все компоненты есть в Terraelectronica:
70097 (мотор-редукторная коробка) — 514р
70157 (2 платформы+крепеж) — 381р
70100 (гусеницы и колеса) — 571р
Итого шасси в Москве 1466 р (~$46-$50)
2. Электроника — $40.7 если обойтись без Sensor shield, но с bluetooth dongle для ПК. Все из Китая.
3. Видеоподсистема — от $27 на DealExtreme.
Итого полный комплект от $105 (все из Китая) до $118 (шасси в Москве).
Батарейки отдельно, вариантов питания слишком много, чтобы здесь описывать.
UPD 2 Для зарядки литий-ионных и литий-полимерных аккумуляторов нужна соответствующая зарядка — обычный блок питания не подойдет.
На хоббикинге есть целый раздел зарядников: www.hobbyking.com/hobbyking/store/__216__408__Battery_Chargers_Acc_-Battery_Chargers.html
Сам я пользуюсь таким: HobbyKing ECO6 50W 5A Balancer/Charger w/ accessories. Ему нужен источник питания на 12В ок 5 А, на HK такой есть, можно и у нас купить на радиорынке.
Все ссылки даны в статье.
Часть 2
Часть 3
