Z-RoboDog - робот на Arduino своими руками

Немного о роботе. В первую очередь проект должен был быть максимально недорогим. Корпус создавал без всяких расчетов и балансировки, основное требование к корпусу - минимальные габариты. Итак начнем собирать этого робота.

Список деталей:
1. Набор деталей корпуса и лап из оргстекла 1.5 мм.
2. Arduino Mega или Uno (используется Mega) - 1 шт.
3. Микро сервопривод (используются TowerPro SG90) - 8 шт.
4. Ультразвуковой дальномер HC-SR04 - 1 шт.
5. Аккумулятор размером 18560, 3.7V (используются TrustFire 2400 mAh) - 2 шт.
6. Держатель батарей размера 18560 (используется переделанный контейнер - упаковка) - 1 шт.
7. Стойка для печатной платы 25 мм. (используется вот такие стойки) - 4 шт.
8. Часть макетной платы.
9. Провода-перемычки.
10. Винт DIN 7985 M2, 8 мм. - 18 шт.
11. Гайка DIN 934 M2 - 18 шт

Сборка робота Z-RoboDog:

1. Корпус робота изготовлен из прозрачного оргстекла толщиной 1.5 мм. Все детали вырезаны лазером по чертежу сделанном в программе CorelDraw: У вас нет доступа к скачиванию файлов с нашего сервера



2. Склейте корпус секундным клеем. Прочности склеенного корпуса будет вполне достаточно. При сборке учитывайте положение отверстий на нижней крышке (смотрите на фото), а лучше приложите плату и убедитесь что всё совпадает. Боковые стенки крепите так, чтобы отверстия для проводов находились ближе к задней стенке. Более широкое отверстие на задней стенке предназначено для USB провода, учтите это при сборке.




3. Отметьте и просверлите отверстия (сверло 2 мм.). Закрепите сервоприводы в корпусе используя болты и гайки (пункты 10, 11 из списка). Валы передних сервоприводов должны быть ближе к передней стенке. Валы задних сервоприводов ближе к задней стенке.






4.1. Соберите лапы. Возьмите верхние части лап (с двумя отверстиями). Разметьте середину детали. Подставив качалку сервоприводов отметьте места крепления шурупами и просверлите отверстия (сверло 1.5 мм). Закрепите качалки так, чтобы шляпки шурупов были со стороны посадочных мест. Качалки закрепите с разных сторон и посадочные места для валов до были в противоположном направлении.




4.2. Отметьте и просверлите отверстия для крепления сервоприводов (сверло 2 мм). Валы закрепленных сервоприводов должны находиться ближе к узкому краю лапы.




4.3. Чтобы лапы не проскальзывали наклейте на них например резину. Но переднюю часть лапы заклеивать не стоит, при шагах собачка может зацепляться и застревать. Я наклеил полосочки липучего коврика из машины.



5. Отметьте и просверлите отверстия для крепления ультразвукового дальномера (сверло 2 мм). Установите дальномер, ножки контактов должны быть направлены вверх.



6. Установите держатель батарей так, чтобы в корпусе он располагался по середине. Закрепите плату Arduino и подключите все компоненты. Для разветвления питания использовалась часть макетной платы.



Настройка и запуск робота Z-RoboDog:

На этом этапе вам придется самостоятельно установить лапы, чтобы можно было откалибровать шаги. Основная проблема в качалках, которые крепятся на валы только в определенных положениях. А также сами сервоприводы могут отличаться рабочими градусами.

Вот как у моей собачки выглядят лапы в крайних точках углов сервопривода (переменные zs1, zs2, zs3 и т.д). Постарайтесь лапы выставить как на фото. Визуально лапы должны быть в одинаковых положениях.



В основной стойке вы так же сможете выставить лапы. После чего не забудьте прикрутить качалки к валам сервоприводов.




Программная часть Z-RoboDog:

Код очень простой, везде добавлены комментарии. Все движения находятся в массиве, чтобы не запутаться в цифрах я использовал переменные для каждого сервопривода. Например, s1 - сервопривод 1, s2 - сервопривод 2 и так далее. Для упрощения понимания предлагая вам вот такую схему.



На схеме пронумерованы лапы, каждая часть лапы ассоциируется с сервоприводом который её двигает. Также для каждой лапы указаны направления движения, знаки плюс и минус указывают куда будет двигаться лапа при увеличении или уменьшении угла. Исходными углами выбраны углы основной стойки (s1, s2, s3 и т.д.). Например если вам нужно вытянуть 2-ю лапу вы должны увеличить угол s3 и s4, в массиве это будет выглядеть так {s1,s2, s3+100,s4+50, s5,s6, s7,s8}. Вот полный скетч. Код писался в силу моих познаний, сообщите если я выбрал не правильный путь реализации.

Видео:




Скетч в архиве: У вас нет доступа к скачиванию файлов с нашего сервера
Источник: robocontroller.ru

0 комментариев

Ваше имя: *
Ваш e-mail: *
Войти через
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Введите два слова, показанных на изображении:
© 2010-2017 Все права соблюдены.