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

08.12.2023

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

Каждый, от подростка до взрослого, мечтает сделать или маленького и симпатичного, или большого и многофункционального робота, сколько людей столько различных модификаций робототехники. А вы хотите сделать робота?

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

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

Детали декоративных роботов крепятся различными способами: на клею, сваркой, на винтах. В таком занятии лишних деталей не бывает в ход идут любые детали, от маленькой пружинки до самого большого болта. Роботы могут быть маленькими, настольными, а некоторые умельцы умудряются сделать декоративных роботов в человеческий рост.

Намного сложнее и не менее интересно сделать действующего робота. Не обязательно робот должен быть похож на человека, это может быть консервная банка с рожками и гусеницами:) тут можно проявлять фантазию до бесконечности.

Раньше роботы были в основном механические, все движения контролировались сложными механизмами. Сегодня большинство грубых механических узлов можно заменить на электрические схемы, а «мозгом» робота может быть всего одна микросхема, в которую через компьютер вводят нужные данные.

Сегодня компания «Лего» выпускает специальные наборы для конструирования роботов, пока такие конструкторы стоят дорого и доступны не всем.

Лично мне интересно сделать робота своими руками из подручных материалов. Самая большая проблема, возникающая при строительстве, это нехватка знаний в области электрики. Если по механике можно ещё что-то сделать без проблем, то с электрическими схемами дела обстоят сложнее, часто требуется совместить несколько разных электрических узлов, тут и начинаются сложности, но всё это поправимо. При создании робота могут возникнуть проблемы с электродвигателями, хорошие моторчики стоят дорого, приходится разбирать старые игрушки, это не очень удобно. Так же стали дефицитными многие радиодетали, всё больше техники делается на сложных микросхемах, а тут нужны серьёзные знания. Несмотря на все трудности многие из нас продолжают создавать удивительных роботов для самых разных целей. Роботы могут стирать, убирать пыль, чертить, двигать предметы, веселить нас или просто украшать рабочий стол.

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

Ведущий канала “Учебник Мастерства” показал наглядно, как сделать шагающего мини робота. В первую очередь сделаем лапы. Две палочки от мороженого скрепляет вместе, отмеряем 6 сантиметров и сразу ставим две метки, где будут отверстия. Скальпелем удаляем всё лишнее, а место среза обрабатываем наждачкой. Бормашинкой по меткам сверлим два отверстия.


Берем еще две палочки, закрепляем скотчем, отмеряем 6 сантиметров и отрезаем ножовкой.Край закруглить не надо. На эту заготовку делаем отверстие только с одной стороны. Эти заготовки будем клеить прямо посередине полки с закругленными краями. Обратите внимание, они должны быть перпендикулярными. Заранее готовим четыре кусочка деревянные шпажки по 3 сантиметра. Вставляем в нижнее отверстие. При помощи суперклея к шпажке приклеиваем две заготовки по 8 см. Используйте линейку, чтобы соблюдать угол 90 градусов. Посмотрите, что должно получиться. Точно таким же образом делаем вторую лапу. Как видите, все понятно и в домашней обстановке несложно все это делать.

Нам еще понадобится пластиковый шарик из под игрушки. В нижней части шара с помощью ножовки делаем два углубления для деревянной шпажки. Закручиваем верхнюю участие маркером отмечаем где будет начала разреза. По резьбе раскручиваем и ещё раз отмечаем. Аккуратно между метками ножовкой делаем надрезы. Выбираем всё. Когда будем откручивать или закручивать шарик, отверстие всегда будет открытым.

Берем малооборотистый моторчик редуктор. Присоединяем к нему готовый контакт. Можно обойтись обыкновенными проводками. От чупа-чупса отрезаем кусочек ножки. Один конец хорошо нагреваем и сплющиваем. Второй конец тоже греем и одеваем на вал редуктора. В нижней части пластикового шарика отмеряем и клеем кусок палочки из под мороженого. Это будет подставка под мотор редуктор. Даем суперклея чуть-чуть затвердеть и сверху обильно наносим горячий клей. Ставим мотор и корпуса заливаем горячим клеем. Он не должен попадать на редуктор. Оставляем шар с мотором в стороне. Делаем 2 сантиметровые заготовки с отверстием посередине. Чтобы не было заусенцев, край обрабатываем наждачной бумагой. Берем линейку и делаем две отметки на расстоянии 1 см. По меткам сверлим два отверстия, скальпелем срезаем полукругом. Края обрабатываем.
Продолжение на видео с пятой минуты. Здесь детально показано, как в домашних условиях сделать интересного мини робота.

Простейший робот в домашних условиях

Для изготовления простейшего нам понадобится моторчик, два куска провода, прищепка, зарядное устройство от телефона. Сначала нужно присоединить проволоку к двигателю. После этого, как клей затвердел, возьмём плоскогубцы согнем ножки. Теперь можно раздвинуть их, чтобы робот стоял более уверенно. Теперь припаяем контакты на зарядное устройство к плюсу и минусу.
Далее видео канала “Без Чувств”, где показано, как создать эту игрушку робота.

Теперь можно тестировать этого простейшего мини робота. Чтобы он зашевелился, нацепим прищепку на ротор. Вот и всё! Робот бегает.

Мини робот из набора в домашних условиях

На канале Alphadroid рассказали, как сделать в домашних обстоятельствах мини робота.
Для сборки ходячего необходимо большое количество компонентов. Была использована платформа для самостоятельной сборки «Дройдик». Помимо деталей, которые можно приобрести на радио-рынке, в наборе есть дополнительные необходимые элементы.

Смотрите видео канала Alpha Mods.

Комплектация набора: панели с деталями для сборки корпуса, батарейный отсек, 4 полноценных набора сервоприводов, 30 гаек, винты и гайки М 3, 2 самореза, ультразвуковой датчик расстояния, шлейф, намагниченная отвертка, инструкция по сборке.

Корпус робота деревянный, из МДФ. В комплекте 5 пластин с деталями для корпуса, обработанные лазерным гравером. Робот оснащен ультразвуковым датчиком, это поможет ему ориентироваться в пространстве. На первых страницах инструкции нарисованы панели корпуса в масштабе 1:1. Необходимо взять реальные пластины и пронумеровать так, как это сделано на рисунке.

Первым делом необходимо взять деталь D1 и D4, а также пару винтов М3*10. Аккуратно вынимаем детали из пластины и прикручиваем друг к другу. Берем D5 и сервоприводы. Прикручиваем к D5 с помощью саморезов, которые идут в комплекте. Берем первую и вторую заготовки, соединяем с помощью D3. В деревянных деталях есть пазы, и они друг в друга вставляются. Берем гайки и располагаем в отведенные для них места. Это были ноги и ступни робота. Переходим к D2 и рукава для сервоприводов. Рукав фиксируем на планке. Планка надевается.

Проводим калибровку: проворачиваем привод в сторону, вытаскиваем планку, вставляем заново и проворачиваем снова, пока планка не упрется. Еще раз снимаем планки и надеваем в конечное положение: так чтобы D2 касалось D3, либо была максимально близка к ней. Возвращаем привода на исходное положение. На этапе калибровка завершена. Берем опору D10 и устанавливаем ее на D1 и D2. D1 зажимается с помощью контргайки не до упора. То, что сейчас установили является гнездом для сервоприводов, оставшиеся два помещаем на соответствующие гнезда. Есть планка фиксации – D11.

Калибровка: одеваем плечики и проворачиваем до упора, плечи снимаем и устанавливаем в вертикальном положении, задаем угол в 90 градусов, наконец снимаем. Ноги готовы. Для сборки головы: D7, D14 и 4 болта м3*12 мм.

Обычно мы рассказываем о роботах, созданных различными научно-исследовательскими центрами или компаниями. Однако роботов с разной степенью успеха по всему миру собирают обычные люди. Итак, сегодня мы представляем вам десять самодельных роботов.

Адам

Немецкий студент-нейробиолог собрал андроида по имени Адам. Его имя расшифровывается как Advanced Dual Arm Manipulator или «усовершенствованный двуручный манипулятор». Руки робота обладают пятью степенями свободы. Их приводят в действие суставы Robolink немецкой компании Igus. Для вращения суставов Адама используются внешние тросы. Кроме того, на голове Адама установлено две видеокамеры, громкоговоритель, синтезатор речи, а также ЖК-панель, имитирующая движения губ робота.

MPR-1

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

Робот-папарацци Boxie

Робот Boxie создан американским инженером Александром Ребеном из Массачусетского технологического института. Boxie, похожий чем-то на героя известного всем мультфильма Валл-И, должен помочь сотрудникам средств массовой информации. Маленький и юркий папарацци полностью сделан из картона, передвигается он при помощи гусениц, а ориентируется на улице посредством ультразвука, что помогает ему преодолевать разнообразные препятствия. Интервью робот берет забавным детским голосом, а респондент в любой момент может прервать беседу, нажав на специальную кнопку. Boxie может записать около шести часов видео и отправить снятое своему хозяину, используя ближайшую точку Wi-Fi.

Morphex

Норвежский инженер Каре Халворсен создал шестиногого робота Morphex, который умеет превращаться в мяч и обратно. Кроме того, робот способен передвигаться. Движение робота происходит за счет двигателей, толкающих его вперед. Робот движется по дуге, а не по прямой линии. В силу своего дизайна Morphex не может самостоятельно исправить траекторию своего движения. В данный момент Халворсен работает над тем, чтобы решить данный вопрос. Ожидается любопытное обновление: создатель робота хочет добавить 36 светодиодов, которые позволили бы Morphex менять цвета.

Truckbot

Американцы Тим Хис и Райан Хикмен решили создать небольшого робота, в основе которого находится телефон Android. Созданный ими робот Truckbot довольно прост в плане его конструкции: телефон HTC G1 находится на верхушке робота, являясь его «мозгом». На данный момент робот умеет передвигаться по плоской поверхности, выбирать направления движения и сопровождать всяческими фразами столкновения с препятствиями.

Робот-пайщик

Однажды американец Брайан Дори, занимающийся разработкой плат расширения, столкнулся со следующей проблемой: запаивать двухрядную гребенку пинов своими руками очень сложно. Брайану был необходим помощник, поэтому он решил создать робота, который умел бы паять. На разработку робота у Брайана ушло два месяца. Сделанный робот оборудован двумя паяльниками, которые могут запаивать два ряда контактов одновременно. Управлять роботом можно через ПК и планшет.

Mechatronic Tank

В каждой семье есть своё излюбленное хобби. Например, в семье американского инженера Роберта Битти конструируют роботов. Роберту помогают его дочери-подростки, а супруга и новорожденная дочь оказывают им моральную поддержку. Наиболее внушительное их творение – самоходная установка Mechatronic Tank. Благодаря 20-килограммовой броне этот робот-охранник – гроза любого преступника. Восемь эхолокаторов, установленных на башне робота, позволяют ему рассчитать дистанцию до объектов, находящихся в его поле зрения, с точностью до дюйма. Робот ещё стреляет металлическими пулями со скоростью в тысячу выстрелов в минуту.

Робособака

Американец по имени Макс создал мини-копию знаменитого . Несущую конструкцию робота Макс сделал из обрезков пятимиллиметрового акрилового стекла, а для скрепления всех частей воедино им были использованы обычные резьбовые болты. Кроме того, при создании робота были использованы миниатюрные сервоприводы, отвечающие за движение его конечностей, а также детали из набора Arduino Mega, координирующие двигательный процесс механического пса.

Робот-шар

Робот-колобок был сконструирован Джеромом Демерсом, работает он на солнечных батареях. Внутри робота есть конденсатор, который соединен с деталями питания от солнца. Он нужен для накапливания энергии в непогоду. Когда солнечной энергии достаточно, шар начинает катиться вперед.

Роборука

Изначально преподавателем Технологического института Джорджии Джилом Вайнбергом была сконструирована роборука для барабанщика, которому ампутировали руку. Затем Джил создал автоматизированную технологию синхронизации, благодаря которой двурукий барабанщик мог бы пользоваться роборукой в качестве дополнительной руки. Роборука реагирует на манеру игры барабанщика, создавая свой собственный ритм. Также роборука умеет импровизировать, анализируя при этом ритм, в котором играет барабанщик.

Робототехника — одно из перспективнейших направлений в сфере интернет-технологий, а то, что за ИТ-сферой будущее, в наше время и объяснять не надо. Роботостроение — увлекательнейшая штука: сконструировать робота значит почти что создать новое существо, пусть и электронное.

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

Вместе с экспертами попытаемся разобраться, зачем нужна роботехника и как к ней подступиться.

Чем отличается робототехника для детей от профессиональной?

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

Татьяна Волкова, сотрудник Центра интеллектуальной робототехники: «Как правило, с чего все начинают: разбираются с моторами и заставляют робота элементарно ехать вперед, потом - делать повороты. Когда робот выполняет команды движения, можно уже подключить датчик и сделать так, чтобы робот ехал на свет или, наоборот, «убегал» от него. А дальше идет любимая задача всех новичков: робот, который ездит по линии. Устраиваются даже различные гонки роботов».

Как понять, есть ли у ребенка склонность к робототехнике?

Для начала нужно купить конструктор и посмотреть, нравится ли ребенку собирать его. А дальше и в кружок можно отдать. Занятия помогут ему развить мелкую моторику, фантазию, пространственное восприятие, логику, концентрацию и терпеливость.

Чем быстрее получится определиться с направлением роботехники — конструирование, электроника, программирование — тем лучше. Все три области обширны и требуют отдельного изучения.

Александр Колотов, ведущий специалист STEM-программ в Университете Иннополис: «Если ребенку нравится собирать конструктор, то ему подойдёт конструирование. Если ему интересно изучать, как устроена вещь, то ему понравится заниматься электроникой. Если у ребенка тяга к математике, то его заинтересует программирование».

Когда начинать обучение робототехнике?

Начинать изучение и записываться в кружки лучше всего с детства, впрочем, не слишком рано — в 8-12 лет , говорят специалисты. Раньше ребенку сложнее уловить понятные абстракция, а позднее, в подростковом возрасте, у него могут появиться другие интересы, и он станет отвлекаться. Также ребенка необходимо мотивировать на изучение математики, чтобы ему было интересно и легко в будущем проектировать механизмы и схемы, составлять алгоритмы.

С 8-9 лет ребята уже могут понимать и запоминать, что такое резистор, светодиод, конденсатор, а позже и понятия из школьной физики осваивать с опережением школьной программы. Не важно, станут они специалистами в этой области или нет, полученные знания и навыки точно даром не пропадут.

В 14-15 лет нужно продолжать заниматься математикой, отодвинуть занятия в кружке по робототехнике на второй план и начать изучение программирования более серьезно - разбираться не только в сложных алгоритмах, но и в структурах хранения данных. Далее идут математический базис и знания в алгоритмизации, погружение в теорию механизмов и машин, проектирование электромеханической оснастки робототехнического устройства, реализацию алгоритмов автоматической навигации, алгоритмы компьютерного зрения и машинное обучение.

Александр Колотов: «Если в этот момент познакомить будущего специалиста с основами линейной алгебры, комплексным счислением, теорией вероятности и статистики, то к поступлению в вуз он уже будет хорошо представлять, зачем ему стоит обращать дополнительное внимание на эти предметы при получении высшего образования».

Какие конструкторы выбрать?

Для каждого возраста существуют свои образовательные программы, конструкторы и платформы, различающиеся степенью сложности. Можно найти как зарубежные, так и отечественные продукты. Есть дорогие наборы для робототехники (в районе 30 тыс. руб. и выше), есть и подешевле, совсем простые (в пределах 1-3 тыс. руб.).

Если ребенку 8-11 лет , можно купить конструкторы Lego или Fischertechnik (хотя, конечно, производители имеют предложения как для более младшего, так и для старшего возрастов). Конструктор Lego для робототехники обладает интересными деталями, яркими фигурками, он легок в сборке и снабжен подробной инструкцией. Серия конструкторов Fischertechnik для робототехники приближает к настоящему процессу разработки, здесь вам и провода, и штекеры, и визуальная среда программирования.

В 13-14 лет можно начать работать с ТРИК или модулями Arduino, которые, по словам Татьяны Волковой, является практически стандартом в области образовательной робототехники, а также Raspberry. ТРИК сложнее Lego, но легче Arduino и Raspberry Ri. Последние две уже требуют базовых навыков программирования.

Что еще потребуется изучить?

Программирование . Избежать его возможно только на первоначальном этапе, потом же без него никуда. Начать можно с Lego Mindstorms, Python, ROS (Robot Operating System).

Базовую механику. Начинать можно с поделок из бумаги, картона, бутылок, что важно и для мелкой моторики, и для общего развития. Самого простого робота можно сделать вообще из отдельных деталей (моторчики, провода, фотодатчик и одна несложная микросхема). Познакомиться с базовой механикой поможет «Мастерилка с папашей Шперхом».

Основы электроники. Для начала научиться собирать простые схемы. Для детей до восьми лет эксперты советуют конструктор «Знаток», дальше можно перейти к набору «Основы электроники. Начало».

Где заниматься робототехникой детям?

Если видите у ребенка интерес, можно отдать его в кружки и на курсы, хотя можно заниматься и самостоятельно. На курсах ребенок будет под руководством специалистов, сможет найти единомышленников, займется робототехникой на регулярной основе.

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

Алексей Колотов: «Для серьезных занятий, проектов, участия в соревнованиях нужно выбирать кружки, с небольшими группами по 6—8 человек и тренером, который приводит учеников к призовым местам на соревнованиях, который постоянно сам развивается и дает интересные задачи. Для занятий в виде хобби можно пойти в группы до 20 человек».

Как выбирать курсы для занятий робототехникой?

При записи на курсы обратите внимание на педагога , рекомендует коммерческий директор компании Promobot Олег Кивокурцев. «Бывают прецеденты, когда педагог просто отдает ребятам оборудование, а дальше занимайтесь кто чем хочет», — согласна с Олегом Татьяна Волкова. От таких занятий толку будет мало.

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

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

Соревнование Robocup 2014

Как изучать робототехнику самостоятельно?

Курсы требуют денег и времени. Если первого не хватает и регулярно ходить куда-либо не получится, можно заняться с ребенком самостоятельным изучением. Важно, чтобы родители обладали необходимой компетенцией в этой сфере: без помощи родителя, ребенку освоить робототехнику будет достаточно сложно, предостерегает Олег Кивокурцев.

Найдите материал для изучения. Их можно брать в Интернете, из заказываемых книг, на посещаемых конференциях, из журнала «Занимательная робототехника». Для самостоятельного изучения есть бесплатные онлайн-курсы, например, «Строим роботов и другие устройства на Arduino: от светофора до 3D-принтера».

Нужно ли изучать роботехнику взрослым?

Если Вы уже вышли из детского возраста, это не значит, что двери робототехники для Вас закрыты. Можно так же записаться на курсы или изучать ее самостоятельно.

Если человек решил заниматься этим как хобби, то путь его будет таким же, как у ребенка. Однако понятно, что дальше любительского уровня без профессионального образования (инженера-конструктора, программиста и электронщика) продвигаться вряд ли получится, хотя, конечно, устраиваться на стажировки в компании и упорно грызть гранит нового для вас направления никто не запрещает.

Олег Кивокурцев: «Взрослому будет проще освоить робототехнику, но важным фактором является время».

Для тех, у кого близкая специальность, но хочется переучиться, также есть разные курсы в помошь. Например, для специалистов по машинному обучению одойдет бесплатный онлайн-курс по вероятностной робототехнике «Искусственный интеллект в робототехнике». Также существуют образовательная программа Intel, просветительский проект «Лекториум», дистанционные курсы ИТМО. Не забудьте и про книги, например, есть много литературы для начинающих («Основы робототехники», «Введение в робототехнику», «Настольная книга робототехника»). Подберите то, что больше всего понятно и подходит вам.

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

В какие вузы идти учиться?


Направления, связанные с робототехникой, можно найти в следующих вузах:

— Московский технологический университет (МИРЭА, МГУПИ, МИТХТ);

— Московский государственный технический университет им. Н. Э. Баумана;

— Московский государственный технологический университет «Станкин»;

— Национальный исследовательский университет «МЭИ» (Москва);

— Сколковский институт науки и технологий (Москва);

— Московский государственный университет путей сообщения Императора Николая II;

— Московский государственный университет пищевых производств;

— Московский государственный университет леса;

— Санкт-Петербургский государственный университет аэрокосмического приборостроения (СГУАП);

— Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики (ИТМО);

— Магнитогорский государственный технический университет;

— Омский Государственный технический университет;

— Саратовский государственный технический университет;

— Университет Иннополис (Республика Татарстан);

— Южно-Российский федеральный университет (Новочеркасский ГТУ).

Самое главное

Знать азы робототехники в скором времени может оказаться полезно и обывателям, а возможность стать специалистом в этой сфере выглядит очень перспективно, так что хотя бы попробовать себя в «роботостроительстве» определенно стоит.

Наверняка, насмотревшись фильмов про роботов, тебе не раз хотелось построить своего боевого товарища, но ты не знал с чего начать. Конечно, у тебя не получится построить двуногого терминатора, но мы и не стремимся к этому. Собрать простого робота может любой, кто умеет правильно держать паяльник в руках и для этого не нужно глубоких знаний, хотя они и не помешают. Любительское роботостроение мало чем отличается от схемотехники, только гораздо интереснее, потому что тут так же затронуты такие области, как механика и программирование. Все компоненты легкодоступны и стоят не так уж и дорого. Так что прогресс не стоит на месте, и мы будем его использовать в свою пользу.

Введение

Итак. Что же такое робот? В большинстве случаев это автоматическое устройство, которое реагирует на какие-либо действия окружающей среды. Роботы могут управляться человеком или выполнять заранее запрограммированные действия. Обычно на роботе располагают разнообразные датчики (расстояния, угла поворота, ускорения), видеокамеры, манипуляторы. Электронная часть робота состоит из микроконтроллера (МК) – микросхема, в которую заключён процессор, тактовый генератор, различная периферия, оперативная и постоянная память. В мире существует огромное количество разнообразных микроконтроллеров для разных областей применения и на их основе можно собирать мощных роботов. Для любительских построек широкое применение нашли микроконтроллеры AVR. Они, на сегодняшний день, самые доступные и в интернете можно найти много примеров на основе этих МК. Чтобы работать с микроконтроллерами тебе нужно уметь программировать на ассемблере или на Cи и иметь начальные знания в цифровой и аналоговой электронике. В нашем проекте мы будем использовать Cи. Программирование для МК мало чем отличается от программирования на компьютере, синтаксис языка такой же, большинство функций практически ничем не отличаются, а новые довольно легко освоить и ими удобно пользоваться.

Что нам нужно

Для начала наш робот будет уметь просто объезжать препятствия, то есть повторять нормальное поведение большинства животных в природе. Всё что нам потребуется для постройки такого робота можно будет найти в радиотехнических магазинах. Решим, как наш робот будет передвигаться. Самым удачным я считаю гусеницы, которые применяются в танках, это наиболее удобное решение, потому что гусеницы имеют большую проходимость, чем колёса машины и ими удобнее управлять (для поворота достаточно вращать гусеницы в разные стороны). Поэтому тебе понадобится любой игрушечный танк, у которого гусеницы вращаются независимо друг от друга, такой можно купить в любом магазине игрушек по разумной цене. От этого танка тебе понадобится только платформа с гусеницами и моторы с редукторами, остальное ты можешь смело открутить и выкинуть. Так же нам потребуется микроконтроллер, мой выбор пал на ATmega16 – у него достаточно портов для подключения датчиков и периферии и вообще он довольно удобный. Ещё тебе потребуется закупить немного радиодеталей, паяльник, мультиметр.

Делаем плату с МК



Схема робота

В нашем случае микроконтроллер будет выполнять функции мозга, но начнём мы не с него, а с питания мозга робота. Правильное питание – залог здоровья, поэтому мы начнём с того, как правильно кормить нашего робота, потому что на этом обычно ошибаются начинающие роботостроители. А для того, чтобы наш робот работал нормально нужно использовать стабилизатор напряжения. Я предпочитаю микросхему L7805 – она предназначена, чтобы на выходе выдавать стабильное напряжение 5В, которое и нужно нашему микроконтроллеру. Но из-за того, что падение напряжения на этой микросхеме составляет порядка 2,5В к нему нужно подавать минимум 7,5В. Вместе с этим стабилизатором используются электролитические конденсаторы, чтобы сгладить пульсации напряжения и в цепь обязательно включают диод, для защиты от переполюсовки.
Теперь мы можем заняться нашим микроконтроллером. Корпус у МК - DIP (так удобнее паять) и имеет сорок выводов. На борту имеется АЦП, ШИМ, USART и много другого, что мы пока использовать не будем. Рассмотрим несколько важных узлов. Вывод RESET (9-ая нога МК) подтянут резистором R1 к «плюсу» источника питания – это нужно делать обязательно! Иначе твой МК может непреднамеренно сбрасываться или, проще говоря – глючить. Так же желательной мерой, но не обязательной является подключение RESET’а через керамический конденсатор C1 к «земле». На схеме ты так же можешь увидеть электролит на 1000 мкФ, он спасает от провалов напряжения при работе двигателей, что тоже благоприятно скажется на работе микроконтроллера. Кварцевый резонатор X1 и конденсаторы C2, C3 нужно располагать как можно ближе к выводам XTAL1 и XTAL2.
О том, как прошивать МК, я рассказывать не буду, так как об этом можно прочитать в интернете. Писать программу мы будем на Cи, в качестве среды программирования я выбрал CodeVisionAVR. Это довольно удобная среда и полезна новичкам, потому что имеет встроенный мастер создания кода.


Плата моего робота

Управление двигателями

Не менее важным компонентом в нашем роботе является драйвер двигателей, который облегчает нам задачу в управлении им. Никогда и ни в коем случае нельзя подключать двигатели напрямую к МК! Вообще мощными нагрузками нельзя управлять с микроконтроллера напрямую, иначе он сгорит. Пользуйтесь ключевыми транзисторами. Для нашего случая есть специальная микросхема – L293D. В подобных несложных проектах всегда старайтесь использовать именно эту микросхему с индексом «D», так как она имеет встроенные диоды для защиты от перегрузок. Этой микросхемой очень легко управлять и её просто достать в радиотехнических магазинах. Она выпускается в двух корпусах DIP и SOIC. Мы будем использовать в корпусе DIP из-за удобства монтажа на плате. L293D имеет раздельное питание двигателей и логики. Поэтому саму микросхему мы будем питать от стабилизатора (вход VSS), а двигатели напрямую от аккумуляторов (вход VS). L293D выдерживает нагрузку 600 мА на каждый канал, а этих каналов у неё два, то есть к одной микросхеме можно подключить два двигателя. Но, чтобы перестраховаться, мы объединим каналы, и тогда потребуется по одной микре на каждый двигатель. Отсюда следует, что L293D сможет выдержать 1.2 А. Чтобы этого добиться нужно объединить ноги микры, как показано на схеме. Микросхема работает следующим образом: когда на IN1 и IN2 подаётся логический «0», а на IN3 и IN4 логическая единица, то двигатель вращается в одну сторону, а если инвертировать сигналы – подать логический ноль, тогда двигатель начнёт вращаться в другую сторону. Выводы EN1 и EN2 отвечают за включение каждого канала. Их мы соединяем и подключаем к «плюсу» питания от стабилизатора. Так как микросхема греется во время работы, а установка радиаторов проблематична на этот тип корпуса, то отвод тепла обеспечивается ногами GND - их лучше распаивать на широкой контактной площадке. Вот и всё, что на первое время тебе нужно знать о драйверах двигателей.

Датчики препятствий

Чтобы наш робот мог ориентироваться и не врезался во всё, мы установим на него два инфракрасных датчика. Самый простейший датчик состоит из ик-диода, который излучает в инфракрасном спектре и фототранзистор, который будет принимать сигнал с ик-диода. Принцип такой: когда перед датчиком нет преграды, то ик-лучи не попадают на фототранзистор и он не открывается. Если перед датчиком препятствие, тогда лучи от него отражаются и попадают на транзистор – он открывается и начинает течь ток. Недостаток таких датчиков в том, что они могут по-разному реагировать на различные поверхности и не защищены от помех - от посторонних сигналов других устройств датчик, случайно, может сработать. От помех может защитить модулирование сигнала, но пока мы этим заморачиватся не будем. Для начала, и этого хватит.


Первый вариант датчиков моего робота

Прошивка робота

Чтобы оживить робота, для него нужно написать прошивку, то есть программу, которая бы снимала показания с датчиков и управляла двигателями. Моя программа наиболее проста, она не содержит сложных конструкций и всем будет понятна. Следующие две строки подключают заголовочные файлы для нашего микроконтроллера и команды для формирования задержек:

#include
#include

Следующие строки условные, потому что значения PORTC зависят от того, как ты подключил драйвер двигателей к своему микроконтроллеру:

PORTC.0 = 1;
PORTC.1 = 0;
PORTC.2 = 1;
PORTC.3 = 0;

Значение 0xFF означает, что на выходе будет лог. «1», а 0x00 – лог. «0».

Следующей конструкцией мы проверяем, есть ли перед роботом препятствие и с какой оно стороны:

If (!(PINB & (1< {
...
}

Если на фототранзистор попадает свет от ик-диода, то на ноге микроконтроллера устанавливается лог. «0» и робот начинает движение назад, чтобы отъехать от препятствия, потом разворачивается, чтобы снова не столкнуться с преградой и затем опять едет вперёд. Так как у нас два датчика, то мы проверяем наличие преграды два раза – справа и слева и потому можем узнать с какой стороны препятствие. Команда «delay_ms(1000)» указывает на то, что пройдёт одна секунда, прежде чем начнёт выполняться следующая команда.

Заключение

Я рассмотрел большинство аспектов, которые помогут тебе собрать твоего первого робота. Но на этом робототехника не заканчивается. Если ты соберёшь этого робота, то у тебя появится куча возможностей для его расширения. Можно усовершенствовать алгоритм робота, как например, что делать, если препятствие не с какой-то стороны, а прямо перед роботом. Так же не помешает установить энкодер – простое устройство, которое поможет точно располагать и знать расположение твоего робота в пространстве. Для наглядности возможна установка цветного или монохромного дисплея, который может показывать полезную информацию – уровень заряда аккумулятора, расстояние до препятствия, различную отладочную информацию. Не помешает и усовершенствование датчиков – установка TSOP (это ик-приёмники, которые воспринимают сигнал только определённой частоты) вместо обычных фототранзисторов. Помимо инфракрасных датчиков существуют ультразвуковые, стоят подороже, и тоже не лишены недостатков, но в последнее время набирают популярность у роботостроителей. Для того, чтобы робот мог реагировать на звук, было бы неплохо установить микрофоны с усилителем. Но по-настоящему интересным, я считаю, установка камеры и программирование на её основе машинного зрения. Есть набор специальных библиотек OpenCV, с помощью которых можно запрограммировать распознавание лиц, движения по цветным маякам и много всего интересного. Всё зависит только от твоей фантазии и умений.
Список компонентов:
  • ATmega16 в корпусе DIP-40>
  • L7805 в корпусе TO-220
  • L293D в корпусе DIP-16 х2 шт.
  • резисторы мощностью 0,25 Вт номиналами: 10 кОм х1 шт., 220 Ом х4 шт.
  • конденсаторы керамические: 0.1 мкФ, 1 мкФ, 22 пФ
  • конденсаторы электролитические: 1000 мкФ х 16 В, 220 мкФ х 16В х2 шт.
  • диод 1N4001 или 1N4004
  • кварцевый резонатор на 16 МГц
  • ИК-диоды: подойдут любые в количестве двух штук.
  • фототранзисторы, тоже любые, но реагирующие только на длину волны ик-лучей
Код прошивки:
/*****************************************************
Прошивка для робота

Тип МК: ATmega16
Тактовая частота: 16,000000 MHz
Если у тебя частота кварца другая, то это нужно указать в настройках среды:
Project -> Configure -> Закладка "C Compiler"
*****************************************************/

#include
#include

Void main(void)
{
//Настраиваем порты на вход
//Через эти порты мы получаем сигналы от датчиков
DDRB=0x00;
//Включаем подтягивающие резисторы
PORTB=0xFF;

//Настраиваем порты на выход
//Через эти порты мы управляем двигателями
DDRC=0xFF;

//Главный цикл программы. Здесь мы считываем значения с датчиков
//и управляем двигателями
while (1)
{
//Едем вперёд
PORTC.0 = 1;
PORTC.1 = 0;
PORTC.2 = 1;
PORTC.3 = 0;
if (!(PINB & (1< {
//Едем назад 1 секунду
PORTC.0 = 0;
PORTC.1 = 1;
PORTC.2 = 0;
PORTC.3 = 1;
delay_ms(1000);
//Заворачиваем
PORTC.0 = 1;
PORTC.1 = 0;
PORTC.2 = 0;
PORTC.3 = 1;
delay_ms(1000);
}
if (!(PINB & (1< {
//Едем назад 1 секунду
PORTC.0 = 0;
PORTC.1 = 1;
PORTC.2 = 0;
PORTC.3 = 1;
delay_ms(1000);
//Заворачиваем
PORTC.0 = 0;
PORTC.1 = 1;
PORTC.2 = 1;
PORTC.3 = 0;
delay_ms(1000);
}
};
}

О моём роботе

В данный момент мой робот практически завершён.


На нём установлена беспроводная камера, датчик расстояния (и камера и этот датчик установлены на поворотной башне), датчик препятствия, энкодер, приёмник сигналов с пульта и интерфейс RS-232 для соединения с компьютером. Работает в двух режимах: автономном и ручном (принимает сигналы управления с пульта ДУ), камера также может включаться/выключаться дистанционно или самим роботом для экономии заряда батарей. Пишу прошивку для охраны квартиры (передача изображения на компьютер, обнаружение движений, объезд помещения).

По пожеланиям выкладываю видео:

UPD. Перезалил фотографии и сделал небольшие поправки в тексте.