Уже в продаже: первая в своем роде книга «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/ А вообще высшим пилотажем будет комбинировать энкодеры, оптические датчики и тактильные )))
Открыт набор на БЕСПЛАТНОЕ ОБУЧЕНИЕ в кружке BEAM-робототехника на 2022 - 2023 год!
Для учащихся г. Санкт-Петербург: Уважаемые учащиеся и родители! Мы сообщаем Вам о начале открытой регистрации в кружок "BEAM-робототехника (радиоэлектронные системы управления)" Центра робототехники Президентского физико-математического лицея №239 на новый 2022-2023 учебный год!
Записаться в нашу группу может совершенно любой учащийся города Санкт-Петербург в возрасте от 10 - 18 лет. Обучение в кружке полностью бесплатное. В рамках обучения в кружке ребята получат необходимые теоретические и практические знания по электротехнике, схемотехнике, созданию электронных схем и своих собственных печатных плат для роботов. Научатся работать с ручными инструментами, 3D-принтерами для изготовления деталей робота, лазерным станком для изготовления корпусов робота. Количество свободных мест - ограниченное, успейте подать Вашу заявку первыми! Перешлите этот пост своим друзьям и знакомым, кого может заинтересовать BEAM-робототехника
***
Давайте поближе разберемся, что же мы изучаем на кружке BEAM-робототехники. И так, приступим:
1. Вы начинающий робототехник Смотрите видео BEAM-робототехника
Вы новенький в робототехнике. Вам интересно это современное направление, вы очень хотите научиться создавать крутых роботов самостоятельно, но вы пока не знаете как именно это делать? Не беда! Мы с удовольствием обучаем начинающих робототехнике всем необходимым навыкам настоящего робототехника, с которыми в последствии вы с легкостью будете собирать крутых роботов , участвовать в соревнованиях , выставках или просто делать крутые поделки для себя. Для этого мы открыли специальное направление: Радиоэлектроника (#BEAM-роботы). В ходе обучения в этом кружке вы научитесь понимать и разбираться в электронике - знать что такое резистор, транзистор, светодиод, мотор и как это работает. Закон #Ома - куда же без него :) Вы изучите схемотехнику - будете разбираться и уметь читать схемы - без этого робота не сделать. Вы научитесь делать свои собственные платы роботов (куда паяют детальки по крутому - без проводков!) Вы поработаете с механикой - нужно знать как и каким образом использовать моторчики, редукторы и различные хитрости их применения. Конечно же научитесь правильно и профессионально паять - это очень важно, иначе ваши роботы постоянно будут разваливаться. Также в рамках этого кружка вы сможете собрать несколько роботов для участия в соревнованиях, и выставках, так как мы считаем, что ваш творческий потенциал очень важен для робототехники в целом.
***
В этом году мы соберем с вами шагающих роботов, будем участвовать в соревнованиях "шагающих роботов", роботов для "следование по линии", роботов для участия в "сумо", а также в творческих выставках.
*** 2. Как подать заявку в кружок?
Прошлый год показал, что желающих заниматься аналоговой робототехникой, создавать beam'ов и участвоват ьс ними в соревнованиях - достаточно много. Поэтому на новый учебный год мы решили увеличить количество мест, создав две группы.
Первая группа по BEAM-робототехнике #261РЭ Радиоэлектроника (BEAM-роботы). Эта группа рассчитана на ребят, кто только начинает изучать робототехнику и кому необходимо получить базовые знания по электротехнике, схемотехнике, и самим бим-роботам. Для того, чтобы записаться в группу 261РЭ , вам нужно пройти по этой ссылке https://robofinist.ru/educationcenter/main/groups/id/1?groupId=796 (кликай) и заполнить анкету (чтобы подать заявку - сперва зарегистрируйтесь на сайте Робофинист как "ученик". Обязательно сохраните логины и пароли - потом они вам очень понадобятся!).
Вторая группа по BEAM-робототехнике #371РЭ Радиоэлектроника (BEAM-роботы). Эта группа рассчитана для учащихся, кто уже сталкивался с направлением BEAM или сам изучал электротехнику и схемотехнику, кто уже принимал участие в соревнованиях с этими роботами. В рамках этой группы мы будет улучшать ваши теоретические и практические навыки, создавать сложных роботов и большую часть занятий посвящать интересным проектам и соревнованиям. Для того, чтобы записаться в группу 371РЭ , вам нужно пройти по этой ссылке https://robofinist.ru/educationcenter/main/groups/id/1?groupId=797 (кликай) и заполнить анкету (чтобы подать заявку - сперва зарегистрируйтесь на сайте Робофинист как "ученик". Обязательно сохраните логины и пароли - потом они вам очень понадобятся!).
Преподаватель данного направления: Мельников Сергей Алексеевич, педагог дополнительного образования Президентского физико-математического лицея №239, руководитель образовательного проекта SERVODROID - Центр робототехники для начинающих. Группа № 261РЭ и 371РЭ. Будьте внимательны, при заполнении анкеты.
*** Краткий план годового обучения:
1. Повторение теоретических знаний по электротехнике, схемотехнике, радиоэлектронике. Закрепление знаний на практике на основе создания самых простых конструкций роботов.
2. Создание роботов для участия в соревнованиях и выставках. Творческие проекты. Много много соревнований
3. Закрепление знаний для дальнейшего перехода с аналоговой робототехники (от BEAM-роботов) к цифровой робототехнике (роботам на Arduino). На последних занятиях вы соберете BEAM-ARDUINO подобного робота ;)