Отправляет email-рассылки с помощью сервиса Sendsay

Робот - своими руками

  Все выпуски  

Цели


Информационный Канал Subscribe.Ru


Робот - своими руками
Как создать своего робота? Вы думаете, это сложно? Вовсе нет. Данная рассылка - это журнал хода создания роботизированной машинки с рабочим названием Mantis-1. Задача была следующая: создать автономную машинку-робота, которая будет сама ездить по комнате, отъезжая от препятствий. На ее примере я покажу Вам, как в домашних условиях сделать электронику для робота, подключить к шасси и задать программу поведения. Попробуйте повторить описанное здесь - Вам наверняка понравится! А заинтересовавшись, Вы сможете по описанным здесь принципам создавать более сложные конструкции.
Сайт рассылки: http://robot.h15.ru

N4. Цели

    Снова привет всем! На днях я перечитал предыдущие выпуски рассылки и понял, что не обозначил одну важную вещь - а куда мы, собственно, идем? Что хотим получить в конце? Поэтому продолжение рассказа о поисках всевозможных деталек :) я пока отложу, а расскажу в этом выпуске о самом проекте робота.

   В первых выпусках рассылки я несколько раз отсылал читателей к статье на сайте Roboclub.ru (http://projects.roboclub.ru/?attempt). Там этот проект описан. Здесь, я думаю, будет полезно немного дополнить это описание.

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

   Теперь - как все это реализуется внутри робота. Для своей конструкции я добыл у знакомого старую китайскую радиоуправляемую машинку, у которой уже не было пульта и сгорела схема приемника. Поэтому схему эту я оттуда выкинул, оставив само шасси. Шасси 4-колесное, задние колеса - ведущие, передние - рулевые. На задних стоит, естественно, электромотор постоянного тока, на передних - рулевая трапеция, на которой укреплен постоянный магнит, управляемая катушкой с током (в зависимости от направления тока магнит выталкивается в определенную сторону). Таким образом, робот имеет семь режимов езды: вперед, вперед-влево, вперед-вправо, стоп, назад, назад-влево, назад-вправо, каждый из которых достигается определенной комбинацией подключения мотора и катушки к источнику тока. Соответствующие комбинации напряжений мы и будем получать на ножках микроконтроллера, к которым будет подключено шасси. Например, задний мотор подключен к выводам 18 и 19 МК. Если и на 18, и на 19 логический 0 (т.е. "земля" или близкое напряжение), то мотор не работает. Если на 18 лог. 1 ("+" питания или близкое напряжение), а на 19 - "0", то есть разность потенциалов, и мотор крутится в одну сторону. Если на 18 "0", на 19 "1" - то в другую... Ну и так далее. А управляет "выставлением" этих 0/1 прошитая в МК программа.

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

УВЕЛИЧИТЬ: Принципиальная схема (грузится с http://robot.h15.ru)
Рис.1
(Рисунок должен загрузиться с robot.h15.ru, нужно подключение к Интернету... Можете посмотреть его прямо на сайте: http://robot.h15.ru/pictures/pr_scheme.gif)

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

Схема включения L293 (грузится с http://robot.h15.ru)
Рис.2
(Рисунок должен загрузиться с robot.h15.ru, нужно подключение к Интернету... Можете посмотреть его прямо на сайте: http://robot.h15.ru/pictures/H-bridge.gif)

   Как вы можете видеть из этой схемы, если замкнуть А1 и А2, то мотор будет крутиться в одну сторону, если В1 и В2 - то в другую. Это самая общая схема. Реальные схемы более сложны и содержат защиту от одновременного включения, например, А1 и В1, что приводит к короткому замыканию.

   В L293 выводы 1-8 подключены к первому мосту, 9-16 - ко второму. Кстати, они к тому же расположены так, что от поворота микросхемы на 180 градусов их расположение не меняется - т.е. можно не бояться неправильно вставить микросхему в кроватку! :) Как говорится, умные существа делали :). Что касается управления моторами, то здесь все так же, как я описал выше, просто драйвер разделяет цепи МК и моторов, защищая МК. Однажды, кстати, у меня один мотор замкнуло накоротко, при этом драйвер сильно грелся, а микроконтроллеру - хоть бы что! :)

   Если используется ее вариант без индекса D (напр., просто L293), то нужны еще дополнительно восемь диодов:

Схема включения L293 (грузится с http://robot.h15.ru)
Рис.3
(Рисунок должен загрузиться с robot.h15.ru, нужно подключение к Интернету... Можете посмотреть его прямо на сайте: http://robot.h15.ru/pictures/at_mot_1.gif)

   Диоды нужны вот почему. Дело в том, что обмотка электродвигателя - это, фактически, катушка индуктивности, и в результате эффектов индукции и самоиндукции на клеммах двигателя может появляться напряжение, превышающее 5 вольт. Поэтому, чтобы не повредить микросхемы, ставятся эти диоды. Если потенциал на клемме двигателя больше потенциала на "+" питания или меньше потенциала земли, то ток пойдет через соответствующий диод, и схема останется цела.

   И, чтобы закончить рассказ о подключении моторов, немного о ключе, соединяющем EN_A и EN_B с землей (рис. 3). Здесь, кстати, в схеме Робоклуба была ошибка - я ее исправил (в исходной схеме этот ключ соединял 1 и 9 выводы с Vcc, т.е. с "+"). EN означает enable (досл. "давать право, возможность"), то бишь "включить". Если вывод enable соединен с землей, то соответствующий мост отключен, т.е. соответствующий мотор работать не будет, независимо от сигналов.

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


Хотите тоже сделать робота? Я могу Вам в это существенно помочь.
Вы можете заказать у меня комплект деталей, необходимых для создания этой конструкции. В него входят элементы, используемые в схеме моего робота. Также к пакету прилагается небольшой набор для изготовления печатной платы, инструкция по сборке и CD-диск, содержащий необходимое программное обеспечение, документацию на некоторые детали и просто полезные статьи. Возможны различные варианты комплектации, соответствующие Вашим пожеланиям.
По вопросам приобретения комплекта обращайтесь на e-mail detektiv1@narod.ru.

Ведущий рассылки - Aracon.
E-mail: detektiv1@narod.ru
Сайты по робототехнике:
  • roboclub.ru
  • Железный феликс
  • roboforum.ru

  • Subscribe.Ru
    Поддержка подписчиков
    Другие рассылки этой тематики
    Другие рассылки этого автора
    Подписан адрес:
    Код этой рассылки: tech.robot
    Отписаться
    Вспомнить пароль

    В избранное