Теперь в нашем онлайн-магазине доступна уникальная книга «BEAM-робототехника. От азов до создания практических устройств», идеально подходящая как для кружков робототехники, так и для самообучения дома. Вы можете приобрести её по привлекательной цене в 699 рублей. Дополнительная информация о книге доступна на нашем сайте. Также в ассортименте нашего онлайн-магазина представлены готовые наборы для сборки роботов, с помощью которых ваш ребенок сможет легко собрать своего первого робота, следуя нашим подробным инструкциям. Перейти в магазин
Доброго времени суток! Всем! Большая просьба помочь с идеей, точнее не с самой а с ее исполнением. Есть вот такая задумка сделать бота, который будет ездить по комнате запоминать расположение объектов, и после сбора данных сможет сам перебираться с одной точки комнаты в другую ( эти точки планирую задавать с пк, связь с которым будет проходить через ик канал) Измерять расстояние до объектов планирую датчиком с мыши. Также планирую в роли "мозга" использовать мк атмегу32. Единственное что пока не ясно как сделать так чтоб эти "мозги" управляли всем. На мк писал только простейшие программки, поэтому тут не знаю с чего начать.
А может поставить энкодеры на колеса, замерять сколько робот проехал, и эти замеры слать на ПК, а на ПК рисовать как работ передвигался. Также дальномер сделать, который будет сканировать все перед роботом. Правда это будет сложновато в выполнении )
забыл написать, что сканировать комнату будет ик-бампер, в роли датчиков измерения растояния на колеса буду ставить датчики с мыши, что б по прорезям измерять проеханное расстояние.
но ваша идея также интересна, нужно будет рассмотреть.
у меня загвоздка а том, что я пока не могу представить как начать писать програму сбору информации и отправки ее на пк, что б там потом можна было вырисовать карту.
killer_vt, молодец! А как дела с програмированием под ОС? *далее изложу свой мыслепоток на эту тему, ключевые слова подчёркнуты и прекрасно гуглятся
1 - Свали все сложные процессы на комп. Растолкую. Всё упирается в вычислительные мощи МК. ГГц - МГц тактовых частот. КБ - ГБ памяти. Ещё могу козявку рассказать: "Ну я ведь могу подключить например EEPROM по I2C и получить 256МБ энергонезависимой памяти!" Парирую: "МК работает на мегагерцах, а I2C не может выше 100кГц. Прерывания должны быть запрещены, что бы не исказить записываеммые данные. Получаем тормоза."
2 - Упрости себе жизнь! Прозрачный UART! Что такое UART у МК? Да COM-порт! Что есть "прозрачный"? Это значит что МК будет воспринимать твой канал связи (будь то радио, ИК и пр.) просто как два провода. Чуть не забыл! Если спросишь: "Почему UART?" Отвечу: "Единственное что безболезненно переносится в эфир." Пробегись глазами по радио приёмопередатчикам и найди там пометку "прозрачный UART". Дорого? Хочешь "хэнд-маде"? Тоже есть выход TSOP!
3 - Кури, кури, кури даташиты! Сам не знаю почему даташиты нужно именно "курить". Но это единственный верный источник информации. Нужно знать свой контролер и внутри, и снаружи. На мониторе открой даташит на свою мегу32 (возьми с atmel.com), на стол положи листок и карандаш. Составляем список нужного и раскидываем всё это по ногам. Подключение передатчика (не важно какого) - ноги RXD и TXD, датчики с аналоговым выходом - ноги ADC, все ненужные/непонятные ноги - цифровые порты ввода вывода.
Убегаю. Ещё что вспомню, напишу и картинки нарисую)))
Датчики: тактильные и безтактильные бамперы, дальномеры; МК: *на этом не останавливаюсь; Приёмопередатчик: TSOPы, радиомодули; Эфир - окружающая среда; Согласователь уровней - устройство кот преобразует 5В приёмопередатчика в 12В COM-порта и наоборот.; ПК: *об этом позже.
Я бы на твоём месте разобрался как работают "железки", а потом перешёл бы к наброскам программного кода для МК и ПК.
Pe40rA, очень занимательно, так интересно и подробно еще никто не рассказывал, с программированием под ОС начал только недавно разбираться, хочу освоить С++. Буду ждать новой информации от вас.
[offtop]Товарищ Aleks_Crow, я натёр мозоль на глазу, но так и не нашёл Вашего исправления. Оч приятно что за мной приглядывают сверху)))[/offtop]
Глава первая. Датчики.
Датчик (по буржуйски "сенсор" или "датаконвертор") преобразует какую либо физическую велечину в электрический сигнал. Нас интересует всё что может помочь с навигацией (из этого списка вычеркунуты приборы связанные с авиамоделизмом, кинектами и жэпээсами, дабы упростить усвоение материала) Датчики рассотояния ├ "Бамперы", "усы" ├ Бамперы на фотоэлементах └ Дальномеры Датчики оценки положения ├ Гироскопы └ Электронные компасы Одометрия └ Энкодеры *это не википедия, а мои мнение
Бамперы - любое уст-во кот реагирует на твердотельные препядствия косанием "усов" или переменой освещёности фотодатчика. Усы - точность, дешивизна и простота исполнения. Только пару минусов - дребезг контактов и механический износ деталей. Первое решается аппаратно (конденсаторы, логические микросхемы), второе только зависит от качества исполнения. Оптопары служат в разы боьше чем микровыключатели, если уже ставить "микрики" то лучше от компютерных мышек (там они качественней). Бамперы на фотоэлементах (на любых, хоть на тсопах) не имеют износа, но не настолько точны как определение препядствия "на ощуп". Минусы: засветка (решается только нагромождением защитных чехлов или програмными методами), неоднозначность показаний зависящих от цвета препядствия (белые предметы обнаружаются раньше чем чёрные). Дальномеры. На эту тему можно написать целую лекцию, но я постараюсь покороче. Поделим их на оптические и звуковые, и на аналоговые и цифровые. Какие лучше? Да какие подходят под задачу! Оптические более точные (разрешение до 1см), слабо зависят от цвета поверхности (т.к. измеряют угол отражения, а не степень освешёности), но бьющих дальше 1.2м я их не видел. Ультразвуковые менее точные, но есть экземпляры бьющие и на 5м. У аналоговых на выходе напряжение в диапозоне от общего до питания (криво, но как по другому сказать?), с нелинейной зависимостью (нужны формулы для перевода в сантиметры). Цифровые меняют своё состояние (с 1 на 0, или на оборот) когда видят пороговое значение расстояние. Пример: робот едет в сторону стены, цифровой дальномер настроен на 0.5м (эту величину выставляет завод, просто так её не поменять), когда робот подедет на 0.5м к стене дальномер подтянет свой выход к +5В, т.е. даст логическую единицу. Плюсы/минусы: Аналоговые - широкий диапозоп измерений/требуют выход АЦП (аналогово-цифрового преобразователя). Цифровые - не требуют канала АЦП (достаточного цифрового входа)/засекают только опр состояние. *при определённом уровне ловкости можно переделать из аналоговых в цифровые, и наоборот.
Датчики оценки положения. Почему оценки? Да потому что эти уст-ва не дают точных координат, а лишь относительные величины (относительно горизонта, магнитного полюса и пр.) Гироскоп представлят из себя микросхему (обычно в очень мелком корпусе), внутри которой расположены конденсаторы с подвижными обкладками (и так на каждую ось измерения). Бывают цифровые и аналоговые. Больше ничего не скажу, т.к. не работал с ними. Электронный компас (он же магнитометр) возвращает угол от магнитного полюса земли, имеет чувствительность немалую, поэтому его надо держать подальше от посторонних магнитных полей. А! Ещё один минус: начинает врать если его держать не горизонтально, ему требуются формулы которые вносили бы поправки в измерения от показиний выше упомянутых гироскопах (обычно они выпускаются в одном корпусе даже)
Энкодеры описать не успею, т.к. убегаю, попозже.
killer_vt, твоя задача на пока определится с набором перефирии. Датчики как устройства ввода и исполнительные устройства как устройства вывода. Удачи! До связи!
Энкодеры, энкодеры, энкодеры... Лкчше чем один мой знакомый я не расскажу, поэтому даю ссыль на него и ещё.
[offtop]Пока похвастаюсь тем чем распологаю:
С лево на право: фоторезистор, фототранзистор, фотоинтерраптор, аналоговый дальномер SHARP. Всё вроде бы понятно, но остановлюсь на фотоинтеррапторе. Люто удобная вещь! ИК-светодиод и ИК-фототранзистор в одном флаконе!
http://www.servodroid.ru/forum/36-85-1 Робот на видео - это танк на РУ. Видео передается с радиокамеры на ПК и там обрабатывается. Пульт управления подключен к пинам COM порта, даже микроконтроллеров в этой конструкции нет и никаких бамперов тоже нет.
Энкодер можно поставить на вал колеса, но тут загвоздка, согласитесь, поворот колеса на один радиан совсем не значит что робот проедет расстояние равное диаметру колеса - во первых это зависит от рельефа, во вторых от проскальзывания - может он упрется в стену (кочку, может его вообще пнули), колесо вращается, датчик считает, а пройденный путь совсем не равен посчитанному. ИМХО, раз уж подразумевается наличие МК, можно попробовать поставить датчик перемещения из оптической мыши ))) Скоро его опробую, и выложу статью (плата уже почти готова). А если хочется поскорее, то вот http://habrahabr.ru/blogs/DIY/128972/ А вообще высшим пилотажем будет комбинировать энкодеры, оптические датчики и тактильные )))
Общайтесь с друзьями в нашем Online-чате по робототехнике
Мы рады, что в России открывается все больше кружков по робототехнике и мы стараемся прикладывать к этому свои усилия начиная с 2008 года :) Мы будем очень рады видеть в чате живое общение, обмен опытом между учащимися в робототехнике и просто увлеченными в этом направлении людей. Мы всегда онлайн, приходите, спрашивайте, помогайте другим - давайте сделаем Мир чуточку лучше!
Чтобы не потерять чат и быть всегда с нами на связи - откройте окно чата в новом окне браузера и добавьте его в заколадки. Открыть в новом окне