roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 20:27

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Простой датчик белой линии и края стола для сумоботов и др.
СообщениеДобавлено: 02 окт 2010, 00:12 
Не в сети
Аватара пользователя

Зарегистрирован: 07 янв 2005, 23:39
Сообщения: 228
Откуда: г.Норильск, Россия
прог. языки: Pascal, C, C++
ФИО: Раф Попов
Для отладочного шасси Злобный Гном была собрана, протестирована и установлена система :) обнаружения белой линии и края стола.
Идея проста и не нова - в зависимости от отражающей способности поверхности меняется ток через фототранзистор.
Но, если использовать два компаратора для одного датчика, можно определить три ситуации - заезд на белую линию, нормальный режим (поле, стол), и край стола.
Напряжение на измерительном/ограничительном резисторе сравнивается двумя компараторами с разными уровнями напряжений. Уровни задаются при помощи настроечных резисторов. Первый уровень - для детектирования белой линии, второй уровень - для детектирования края стола/ринга и т.д. Результат сравнения - логическая единица, если все в порядке, логический ноль - при наезде на линию или при подъезде к краю.
Настроечные резисторы и оптопара запитаны от источника опорного напряжения на 3.3 в, чтобы уменьшить зависимость от напряжения батареи питающих элементов.
Оптопара на отражение - ITR8307, компаратор - счетвереный LM339, по два компаратора на датчик.
Токоограничительный резистор для настроечного светодиода надо рассчитывать, исходя из того, что выходной втекающий ток компаратора 16 мА.
В общем никаких рокет-сайенсов, все просто и надежно, как тесак боевого Злобного Гнома :)
Может, кому пригодится. Замечания и поправки принимаются :)

Схема:
Вложение:
robo_sensor1.jpg
robo_sensor1.jpg [ 296.38 КиБ | Просмотров: 1239 ]


Дачик:
Вложение:
robo_sensor2.jpg
robo_sensor2.jpg [ 380.1 КиБ | Просмотров: 1220 ]


Злобный Гном:
Вложение:
robo_sensor3.jpg
robo_sensor3.jpg [ 235.95 КиБ | Просмотров: 1236 ]


Последний раз редактировалось MEXAHuK 03 окт 2010, 00:16, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простой датчик белой линии/края для сумобота и т.п.
СообщениеДобавлено: 02 окт 2010, 19:06 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Слов нет, вещица знатная, ручной работы, цены немалой :)

Датчик как вещь в себе, законченная единица. НО:

- для сумо было бы неплохо иметь 4 таких датчика (по углам), настройки - море.
У меня раньше примерно такие же датчики стояли, только один датчик - один порог - один компаратор. А сейчас я хочу немного переделать это место. А все из-за лени: подстроечники крутить. Там еще лампочки нужны, которые срабатывание показывают. Идея такая: со всех отражательных оптронов подать сигналы на входы ацп (если они есть конечно, но у меня есть, точнее у меги8). И две кнопочки к контролеру. Затем калибруем так:
- ставим бота передом на линию, задом на поле и жмем кнопку 1, затем разворачиваем на 180 градусов и жмем кнопку 2. Для каждого датчика бот получил уровень черного и белого. Границей будет код посередине между ними (а можно сделать и две границы с зоной неопределенности). В вашем случае можно усложнить калибровку и получать еще и уровень "над пропастью". По даташиту одно ацп преобразование происходит за 70 мкс, 4 - за 300 мкс. Вроде бы быстро и бот все успеет сделать, не улетит через линию. Хотя я не знаю его скорость.

Все это я также написал по принципу "может кому пригодится". Экономия и места на плате, и деталек, и своего труда по изготовлению платы.

Добавлено спустя 14 минут:
Посмотрел на схему повнимательней, кое-что мне в ней не понравилось. Но может я не прав.
Выходы компараторов - открытые коллекторы, а у вас там светодиод на землю. Когда транзистор открыт - на выходе 0,3 В, светодиод не светит. Когда транзистор закрыт - светодиод светит, на выходе напряжение падения на светодиоде (около 1 В). Но для контроллера то это напряжение низкое (мне так кажется). Или я не прав?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простой датчик белой линии и края стола для сумоботов и
СообщениеДобавлено: 03 окт 2010, 00:11 
Не в сети
Аватара пользователя

Зарегистрирован: 07 янв 2005, 23:39
Сообщения: 228
Откуда: г.Норильск, Россия
прог. языки: Pascal, C, C++
ФИО: Раф Попов
Да, совершенно правы, сейчас сам посмотрел и удивился :) У меня стоят светодиоды на 2 вольта, напряжение питания контроллера 4.6 в, лог. уровень 1 по даташиту 0.6*4.6=2.76 в. Таким образом, все работало только потому, что контроллер все-таки понимал такую ненадежную единицу. Исправил схему, спасибо !

По поводу АЦП - да, согласен, если есть свободные ноги, лучше будет использовать программное определение состояния датчиков. Улететь за 300 мкс далеко не должен :)
Я думаю так сделать для задних датчиков линии/края. Шасси отладочное, на нем потихоньку проверяю все свои аппаратно-программные задумки.
И еще, мне кажется, если запитать датчики от источника опорного напряжения, то можно откалибровать один раз, при наладке, и ввести эти значения в виде констант в программу.

ЗЫ давайте на ты, а то прямо как-то неловко :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простой датчик белой линии и края стола для сумоботов и
СообщениеДобавлено: 03 окт 2010, 09:27 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Насчет констант могут вылезти проблемы.
Светодиод будет светить стабильно, а фототранзистор принимает свет, интенсивность которого может меняться. Внешняя засветка как бы. Но если датчики близко к полу, или закрыты юбочкой, то скорее всего это несущественно. И опять же на своем ринге вы подобрали коэффициенты, пришли к товарищу, а у него белый не очень белый и черный не очень черный :D

ЗЫ. Можно и на "ты", только у меня уже пальцы сами пишут "вы", да и забыть легко с кем на "ты", а с кем не "вы" и кого-нибудь обидеть невзначай :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 33


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO