» » Минисумо робот

 
 
 

Минисумо робот

Разместил GuntisK 31 октября 2009. Просмотров: 25 823

18 И опять роботы...
На этот раз Я расскажу, как сделать простой робот для соревнований по мини сумо. Весь Сентябрь я работал с первокурсниками мехатроники, и вместе создали несколько таких роботов....

Охота на роботов...

Итак... Наш небольшой электрический зверёк должен видеть своего противника, вытолкнуть его за пределы ринга, а сам должен оставатся на ринге. Правила игры можно прочитать тут: _//moscowservice.org/roboty_sumo/68-obshhie-pravila-minisumo.html. Значит надо два типа сенсоров - те, которые „видят” другого робота, и сенсоры определения наличия белой линий на краю ринга. В первом случае выбор довольно широк - тут можно использовать ИК датчики (их тоже много всяких... например ИК фототранзисторы, модулированные ИК приёмники, ИК измерители расстояния фирмы SHARP, и.т.д.), ультразвуковые датчики, лазерные сенсоры и другую экзотику.

Нам важна чувствительность и помехоустойчивость сенсора. Также желательно исключить ложное срабатывание (допустим, кто то захочет сфотографировать Вашего робота во время раунда. Вспышка при этом может дать ложный сигнал и робот поведёт себя неадекватно). Значит, простые элементы, как фотодиоды и фототранзисторы, в этом случае пусть полежат еще в коробочке... Из дешевых вариантов нам наиболее подходят модулированные ИК приёмники - те, которые есть во всех устройствах, управляемых от пульта дистанционного управления. Они бывают на разные частоты- от 32 КГц до 56 КГц. Я взял на 38 КГц. Если у Вас будут на другую частоту - не беда. Подкорректируйте значение частоты в программе МК и всё!
Датчики линий - фотоинтерруптеры, например такие, как показано на следующей картинке.


Они должны в себе содержать ИК светодиод и ИК фототранзистор. Принцип действия уже описан в моей статье про робота GOOFY.
Мозги робота - это микроконтроллер АТМЕГА 8 - он дешевый и доступный. Задача его - генерировать меандр частотой 38 КГц для управления ИК светодиодами (необходимы для работы модулированных ИК приёмников), реагировать на сигналы от датчиков и управлять модифицированными модельными сервомоторами используя ШИМ по программе.

Схема:

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

МК тактируется кварцем на частоту 16МГц. Под эту частоту и определялись значения ШИМ. Каналы OC1A (выв.15) и OC1B (выв.16) управляют сервомоторчиками. Для этого нужен сигнал частотой 50 Гц, а скорость и направление определяет длина импульса от 1.0 мс до 2.0 мс. При 1.5 мс мотор должен стоять. Более подробно о действии и строении модельных сервомоторов можно прочитать в интернете.
Минисумо робот

Есть одно НО! Нам придется слегка переделать такой мотор, так как он расчитан на позиционирование только по 180 градусам, а нам надо, чтобы он вращался на 360 градусов.

Следуем по этой инструкций: _//www.seattlerobotics.org/guide/servohack.html. Всё, что надо, это снять/отрезать ограничитель с главной шестерни и вместо переменного резистора обратной связи впаять два постоянных резистора. Обычно переменник там стоит на 5к - значит надо впаять два по 2.5к (при длине импульса 1.5мС мотор будет стоять. Изменяя длину импульса в сторону 1.0 мс или 2.0 мс мотор, соответственно, будет изменять направление и скорость вращения вала). У серво три провода - черный (GND, "-"), красный (+5V, "+") и белый (PWM). Такие моторы продаются в магазинах для моделистов и, конечно же, в интернет-магазинах.

Далее по схеме: выводы МК порта С подтянуты внутренними резисторами к +5в. Т.е. на нём логический 1. При срабатываний любого сенсора (а их у нас четыре) вход сбрасывает на логический 0.

Программа МК реализована довольно примитивно - в ней четыре функции - две для пауз, третья - опрос сенсоров используя IFы, а четвёртая - управление моторами по SWITCH (STATE). Я думаю, разобратся в программе Вам не составит труда.
Отдельное слово следует сказать о подстроечных резисторах R2, R3, R5. Первоначально их надо установить в среднее положение и потом, при необходимости, подстроить. R2 и R3 надо подстроить так, чтобы при наезде на белую линию робот начал двигатся назад. R5 регулирует ток через светодиоды HL1, HL2. Принцип такой - чем ярче горит ИК светодиоды, тем далее робот „видит”. Но менее 50 Ом уменьшать сопротивление R5 не следует. Также, на эти светодиоды желательно надеть светонепроницаемые трубки для исключения излучения по бокам светодиодов. При обнаружений цели робот должен двигатся в сторону того сенсора, который сработал. Если сработали оба (противник спереди), то минисумо идёт полным ходом вперёд. Сенсоры линий устанавливают спереди робота за лопатой. То, в какой стороне находится каждый сенсор, значения не имеет, так как приоритет у них один и тот же.


Рядом другая - более мощная версия мини сумо робота. Схема там уже другая.


Видео работы




Файлы

В архиве source код для CodeVisionAVR. Вам останется только откомпилировать его и залить в МК. Платы для робота специально не разрабатывались - всё делается на макетках, так как схема не очень сложная.
sumo.7z | Файл 1,38 Kb загружен 131 раз.
Гунтис (GuntisK)
Латвия, город Резекне
Профиль GuntisK
О себе автор ничего не сообщил.
 

Понравилось? Палец вверх!

  • всего лайков: 12

Поделись с друзьями!

Связанные материалы:


Генератор v.2.0 с непрерывным режимом для проверки телефонных линий

Учитывая пожелания трудящихся, в том числе монтеров–связистов, в генератор для проверки телефонных...

Прибор для проверки протяженных телефонных линий (более 2 км) с защитой от ложных

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

Фанерный робот. Мой первый в жизни ЧПУ-станок из подножных материалов

Приветствую всех земляков Датагорцев! Планировал написать очередную статью конечно же о новом...

Универсальная "прозвонка" на замыкание и размыкание с памятью, звуковой и световой

Известно, что радиотехника – наука о контактах. Неисправность – это наличие контакта там, где его...

Анодирование алюминия

Решил вот покрасить алюминевые колёса для очередного робота. Обычно анодируют. Из Википедий узнаём...

Простой цифровой вольтметр от 0 до 30 вольт на 3 сегмента

Здравствуйте, уважаемые Датагорцы! Делая разные полезные, а иногда и не очень, радиоелектронные...

Робот "без мозгов" на L293D

В последнее время так и получается что собираю разные „игрушкоподобные” конструкций. Вот и пришла...

Разработка встроенных систем с помощью микроконтроллеров PIС. Уилмсхерст Т.

Разработка встроенных систем с помощью микроконтроллеров PIС. Уилмсхерст Т. Год издания: 2008...

Экскурсия по электронике. Гололобов В.Н.

Экскурсия по электронике. Гололобов В.Н. Год издания: 2008 Страниц: 586 От автора: О чем эта...

Сборка и программирование мобильных роботов в домашних условиях. Жимарши Ф.

Сборка и программирование мобильных роботов в домашних условиях. Фредерик Жимарши. Издательство: НТ...

Робот „GOOFY” на ATMEGA 8.

Постепенно изучая работу МК и язык Си появилась на свет данная конструкция – робот который следит...

Резистор v2.2

Программа Резистор v2.2 Автор: Кучеренко Валерий Программа предназначена для определения...
<
  • Главный редактор
31 октября 2009 20:48

Игорь Петрович Котов / Datagor

  • С нами с 25.02.2011
  • Ушёл в реал Пользователь offline
  • 1 604 комментария
  • 257 публикаций
 
  • 0
Нет, если так дальше дело пойдет, скоро у каждого паяльщика будет кому за пывом бегать!

wink wink wink

<
  • Гражданин
31 октября 2009 21:01

Дмитрий / dimidroll

  • С нами с 10.05.2009
  • Ушёл в реал Пользователь offline
  • 5 комментариев
  • 0 публикаций
 
  • 0
с одной стороны весело, а с другой не очень... Ибо чем больше узнаю чем народ занимается на первом курсе - тем больше понимаю, что зря потратил 5 с половиной лет:(

<
  • Гражданин
31 октября 2009 23:20

Александр / AlDem

  • С нами с 24.04.2009
  • Ушёл в реал Пользователь offline
  • 25 комментариев
  • 0 публикаций
 
  • 0
Хороший малый, похоже, я уже знаю
кто уменья снег будет убирать водворе.
wink

<
  • Гражданин
31 октября 2009 23:50

Гунтис / GuntisK

  • С нами с 15.09.2011
  • Ушёл в реал Пользователь offline
  • 90 комментариев
  • 20 публикаций
 
  • 0
У нас с друзями еще запланирована газонокосилка-робот. Как говорится - Лень-двигатель прогресса. wink

<
  • Гражданин
1 ноября 2009 01:24

Сергей / Sergey49

  • С нами с 5.11.2008
  • Ушёл в реал Пользователь offline
  • 60 комментариев
  • 1 публикация
 
  • 0
Ну если время позволяет - почему бы нет. Лично у меня его нет. winked winked winked

<
  • Гражданин
1 ноября 2009 01:38

Александр / TANk

  • С нами с 11.08.2011
  • Ушёл в реал Пользователь offline
  • 159 комментариев
  • 16 публикаций
 
  • 0
Надо такую игрушку для котенка сделать lol Только датчик надо какой то тепловой придумать, чтобы эта машинка ползала по полу и сама искала Мурзика, а после того как найдет загоняла его на ближайший шкаф. Не так скучно коту будет пока один дома сидит.

<
  • Гражданин
1 ноября 2009 02:35

Денис / Новиков_Денис

  • С нами с 11.10.2008
  • Ушёл в реал Пользователь offline
  • 19 комментариев
  • 0 публикаций
 
  • 0
Браво! Ролик заставил посмеяться!

<
  • Прохожий
1 ноября 2009 03:35

/ KiberPank

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Респект! Микроконтроллеры - замечательная штука :)

А роботы это прикольно!

<
  • Гражданин
10 ноября 2009 03:37

Роман / Muchachos

  • С нами с 1.06.2009
  • Ушёл в реал Пользователь offline
  • 11 комментариев
  • 2 публикации
 
  • 0
По-моему работает отлично, желаю успехов.

<
  • Прохожий
15 декабря 2009 02:53

/ ssk-nk

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
идея отличная!!!

<
  • Прохожий
11 февраля 2010 16:42

/ Chuma

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Вот там на последней фотографии два робота, ты там написал что он более мощный и схема другая=) У меня возникло пару вопроссов, почему он мощнее? и в чём разница схем???=) заранее спасибо=)

<
  • Гражданин
3 марта 2010 19:09

Гунтис / GuntisK

  • С нами с 15.09.2011
  • Ушёл в реал Пользователь offline
  • 90 комментариев
  • 20 публикаций
 
  • 0
У второго робота в отличий от первого установлены моторы с планетарными редукторами. Он быстрее и может вытолкнуть более тяжелые предметы. Схема отличается тем что используется другие сенсоры (фирмы SHARP) и добавлем драивер моторов собранный на микросхемах L293.

<
  • Прохожий
7 марта 2010 07:40

/ faand412882

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Мой сынуля посмотрел на Ваше видео, вот теперь мы делаем двух роботов.
Схемка прикольная, простая. Только думаю это все на ATmega168 ваять!

Спасибо за статейку, а то никак не мог собраться, и начать возится с роботами.

<
  • Прохожий
10 марта 2010 23:57

/ Chuma

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Я не могу найти ИК приёмники IRLMR2738 который показан на схеме, я даже гуглил но ничего подобного не нашёл. У меня даже сложилось менение что такогй не существует... может какая то описка в названии модели??? Помогите мне пожалуйста=)

<
  • Гражданин
11 марта 2010 22:40

Гунтис / GuntisK

  • С нами с 15.09.2011
  • Ушёл в реал Пользователь offline
  • 90 комментариев
  • 20 публикаций
 
  • 0
Вместо IRLMR2738 ставим любой другой ИК сенсор который работает на сигнал 38кГц. Смотрим GOOGLE по словам 38khz IR detector

<
  • Прохожий
2 января 2012 14:10

/ FliM4icK

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
А что нового было поставлено на чёрного( правого) робота??? Там не серводвигатели??

<
  • Прохожий
8 января 2012 02:03

/ FliM4icK

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
А колёса какие, как их найти?

<
  • Прохожий
14 марта 2012 00:00

/ FliM4icK

  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Извините За ДВА предыдущих комментария не о чём....

Начал делать робота столкнулся с проблемой...

ЗАПРОГРАММИРОВАЛ через PonyProg2000 С помощью пять проводков И !!! НИЧеГО!!!! просто ноль... Включаю робота одно и тоже, вставляю сверху микросхему тоже самое... делал разводку - через ЛУТ и травил печатную плату( ОПЫТ СОСТАВЛЕНИЯ В СХЕМАХ ЕСТЬ ) могу скинуть кстати что бы проверить.

Сделал модернизации.

1) Вставил на датчик линии Aurdrino
//amperka.ru/collection/Sensory/product/Datchik-linii
2) Сервопривод вот такой 360 градусов //amperka.ru/collection/Mehanika/product/Moschnyy-servoprivod-360%C2%B0


ТЕПЕРЬ ВОПРОС!!!

// Port C initialization
// Func6=In Func5=In Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State6=T State5=P State4=0 State3=0 State2=0 State1=0 State0=0
PORTC=0x7F;
DDRC=0x00;

В последней строчке случаем не DDRC=0x1F

// State6=T State5=P Это что???
И программа полностью рабочая??? есть ли какие - нибудь НЕДОЧЁТЫ, тонкости????

Очень хочу сделать)))

Информация
Вы не можете участвовать в комментировании. Вероятные причины:
— Администратор остановил комментирование этой статьи.
— Вы не авторизовались на сайте. Войдите с паролем.
— Вы не зарегистрированы у нас. Зарегистрируйтесь.
— Вы зарегистрированы, но имеете низкий уровень доступа. Получите полный доступ.