Пользователь
0,0
рейтинг
20 января 2015 в 13:55

Hexapod-робот, управляемый с ПК из песочницы

После просмотра большого количества статей и видео про роботов-пауков захотелось самому создать подобное. Было решено все сделать «с нуля», то есть создать корпус робота, спаять плату и запрограммировать.

Корпус робота было решено сделать из оргстекла, данный материал легок в обработке и достаточно прочный. Форма конечностей и тела робота создана самостоятельно по существующим аналогам. Извиняюсь за недостаточное количество размеров на чертежах, рисовал для себя.

image

Все части были вырезаны из оргстекла толщиной 3 мм с помощью лобзика. Чтобы все выглядело симпатичней, все части были обтянуты карбоновой пленкой. Далее нужно было выбрать сервомашинки. Было принято решение в разработке применять сервомашинки MG90S.



Это самые дешевые сервомашинки с металлическими шестеренками. На момент покупки они стояли 200 рублей за штуку. В итоге сборки корпуса и сервомашинок получилось вот это.



Всю систему было решено построить на двух микроконтроллерах AVR ATmega 32, выбор обоснован тем, что у меня были эти камни, а использование сразу двух объясняется тем, что одному было бы сложно справиться со всеми задачами, которые должен выполнять робот. А именно:

− движение в любом направлении, а также поворот вокруг своей оси в любом направлении;
− удержание горизонта на наклонной поверхности;
− невозможность столкновения со статическими объектами во время движения.

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



В качестве дальномера использовался популярный ультразвуковой датчик расстояния HC-SR04



В качестве акселерометра использовался датчик MMA7361 — это малопотребляющий, емкостной микроэлектромеханический датчик ускорения в низкопрофильном корпусе, отличающийся однополярным низкочастотным фильтром, схемой температурной компенсации и самотестирования, детектором нулевого ускорения для определения линейного свободного падения и возможностью выбора одного из двух уровней ускорения. Уровень напряжения нулевого ускорения и чувствительность имеют заводскую настройку и не требуют дополнительных внешних компонентов. MMA7361 имеет режим сна.



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

Оставалось определиться, как связать ПК и робота. Было решено использовать радио. В итоге был куплен комплект радиомодемов 3DRobotics.



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

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

В распоряжении имелась батарея 7.4 вольта. В схеме нужно было предусмотреть два стабилизатора напряжения из 7.4 в 5 вольт с током нагрузки три ампера для питания сервоприводов и один стабилизатор напряжения из 7.4 в 5 вольт с током нагрузки один ампер для питания остальной схемы. Для решения данной задачи были использованы китайские стабилизаторы KIS-3R33S, так как они тоже уже имелись у меня.



Далее была разработана плата.



Сделана лазерно-утюжным методом, вытравлена в хлорном железе и залужена сплавом Розе



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



Дальше были написаны программы для микроконтроллеров и простенькая программа для ПК. Интерфейс программы для ПК выглядит следующим образом, с помощью этой программы осуществляется управление роботом и отладка его движений.



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

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



@Nikcherr
карма
15,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (10)

  • 0
    Очень интересный проект, у меня лежит чертежи и проект робота на 4 ногах, но все не до него, как соберусь сразу же статью выложу.
    А подскажите какова дальность радио модулей и почему вы не выбрали WiFi?
  • +4
    Автору респект!

    были написаны программы для микроконтроллеров и простенькая программа для ПК

    поделитесь?
  • 0
    Люблю тему роботов, таки когда-то соберу свой.
  • +1
    Отличная штука. Осталось только корпус сделать и спрятать в него провода.
    А какая цель была, изначально? Управляемый или автономный бот? Если управляемый, мне кажется, имеет смысл добавить управление с беспроводного геймпада.
  • +4
    Почему все гексаподы, что я видел, так уродливо передвигаются? Как будто они не имеют представления о массе и длинне своих ног и тела. Почему нет ни одного тензометрического датчика, регистрирующего срыв ноги и обратной связи для замедления? Почему построение гексапода заканчивается на «ну мы тут запилили хард, а на софт пофиг». Хард гексапода — это 20% от всей конструкции…
    • +2
      после такого комментария Вы просто обязаны запилить своего гексапода и рассказать об этом на Хабре)
      • 0
        Ну по крайней мере понятно откуда начинать — примерно вот отсюда хттп :// cdn. intechopen.com/pdfs-wm/10075.pdf. Там еще много интересного, если циферки документов менять от 0 до 50000.
  • 0
    Поясните приемущество гексопода, как робота. Где он эффективен?
    • 0
      Ну точно не на паркетном полу, что ясно из видео :)

      Может быть, в таких ситуациях? www.youtube.com/watch?v=j87k71kOBis (рекомендую ускорить видео)
  • +1
    Сложилось впечатление, что это выдумка! Тупо текст и ни одного доказательства в виде кода или файлов с кодом…

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.