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

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

Введение

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

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


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

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

Google купила Boston Dynamics. Это сообщение у меня вызвало некий шок. Boston Dynamics - одна из самых известных компаний, специализирующихся на робототехнике, и, если учесть, что Google покупает уже восьмую компанию на этом рынке, возникает правомерный вопрос: что же они задумали? Похоже, нас ждет интересное десятилетие!

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

Физический и графический движок

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

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

Физический движок позволяет создать виртуальное пространство, в которое можно добавить виртуальные статические и динамические объекты и указать законы взаимодействия тел и среды. Расчет взаимодействия тел выполняется самим движком. Вычисляя взаимодействие тел между собой и со средой, физический движок приближает физическую модель получаемой системы к реальной и передает уточненные геометрические данные графическому движку.

Достоинства и недостатки симуляторов

Достоинства:

  • низкая стоимость;
  • возможность в любой момент доработать модель;
  • возможность отдельно тестировать функциональные составляющие робота;
  • возможность одновременной симуляции нескольких типов роботов.

Недостатки:

  • даже самый совершенный физический движок не может симулировать все законы реального мира;
  • требовательность к ресурсам машины.

Microsoft Robotics Developer Studio

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

  • библиотека Concurrent and Coordination Runtime (CCR) - предназначена для организации обработки данных с помощью параллельно и асинхронно выполняющихся методов. Взаимодействие между такими методами организуется на основе сообщений. Рассылка сообщений основана на использовании портов;
  • Decentralized Software Services (DSS) - среда, которая позволяет запускать алгоритмы обработки данных на разных ЭВМ, организовывать асинхронное взаимодействие процессов управления различными подсистемами робота;
  • Visual Simulation Environment (VSE) - среда визуализации, которая позволяет экспериментировать с моделями роботов, тестировать алгоритмы управления роботами;
  • Visual Programming Language (VPL) - язык, предназначенный для разработки программ управления роботами. Программа на таком языке представляется в виде последовательности блоков, которые выполняют обработку данных, и связей между ними.

За симулятор физики в Robotics отвечает Ageia Physx. Очень печально, но в симуляторе отсутствует трение между создаваемыми объектами, хотя моделируется трение между отдельным объектом и платформой, на которой он размещается.

Создать сцену в симуляторе и запрограммировать робота можно на VPL или C#. Естественно, что на C# сцену сделать сложнее, но зато и код получится более эффективный. Возможности Robotics позволяют смоделировать футбол роботов, железную дорогу, манипулятор, добавить на сцену нескольких роботов. Доступные из коробки сенсоры: GPS, лазерный дальномер, инфракрасный дальномер, компас, сенсор цвета, сенсор яркости, веб-камера.

Подробнее о работе с этой средой ты можешь прочитать в номерах 01’13 («Стань робототехником!») и 03’13 («Робот-шпион - это просто!»).

Robotino - робот, созданный Festo Didactic для обучения робототехнике. Для программирования робота требуется программа Robotino® View. На сайте Festo доступен симулятор робота для Windows - Robotino® SIM (есть профессиональная и бесплатная версия, бесплатная - немного урезанная по функциональности).

Немного о роботе, который встроен в симулятор. В его состав входят три двигателя, которые позволяют перемещаться роботу по плоскости в любом направлении. Сенсорная система робота включает девять инфракрасных сенсоров расстояния, два цифровых оптических сенсора и камеру. Программировать робота можно с помощью C/C++, Java, .NET.

Вообще, способности бесплатного симулятора удручают. Но! Если хорошенько поискать в интернете, то можно найти версии данного симулятора, заточенные под разные задачи. Да будет тебе известно, что компания Festo Didactic выступает одним из спонсоров RoboCup . Поэтому здесь goo.gl/Wtle15 и здесь goo.gl/pHA2oL ты сможешь найти версии этого симулятора, использовавшиеся в соревнованиях.

Gazebo - мощный симулятор роботов, разработанный для операционной системы Linux. Абсолютно бесплатен для использования. Gazebo может симулировать нескольких роботов с сенсорами в окружении различных объектов. Также тут доступен редактор, который позволяет создавать 3D-сцены без программирования. Моделируемые сенсоры: лазерный дальномер, камера, кинект-сенсор, устройство для чтения RFID-меток и бамперы. Из коробки в симуляторе имеются модели следующих роботов: PR2, Pioneer2 DX, iRobot Create, TurtleBot, а также манипуляторы и захваты. К симулятору для создания качественной графики можно подключить OGRE (графический движок с открытым исходным кодом). В Gazebo встроена возможность чтения файлов в формате Collada, что позволяет добавлять в симулятор объекты, спроектированные в одном из редакторов 3D-моделей.

Gazebo используется в качестве симулятора в DARPA Robotics Challenge (DRC). В рамках DRC разработано приложение CloudSim для запуска Gazebo на платформе облачных вычислений Amazon.

AnyKode Marilou Robotics Studio

AnyKode Marilou Robotics Studio - среда разработки и симулирования мобильных роботов, гуманоидов и манипуляторов с учетом физических законов реального мира. Для объектов можно указать следующие физические параметры: массу, упругость, свойства материала, вращающие моменты, а также некоторые другие.

Marilou позволяет подключать к роботу различные виртуальные устройства: компас, акселерометры, двигатели и сервомоторы, бампер, сенсоры расстояния (ультразвуковой и инфракрасный), GPS и другие устройства.

В редакторе объектов Marilou доступны статические и динамические объекты, которые можно размещать в симулируемом мире (поддерживается одновременная симуляция нескольких роботов). Сложные объекты в Marilou строятся из более простых (используется иерархический подход к представлению объекта), что позволяет повторно использовать части объектов. В симуляторе доступны несколько источников света: точечный, прожектор, внешний и направленный.

В Marilou есть MODA (Marilou Open Devices Access) - SDK для работы с роботами и их компонентами в симуляторе. После синхронизации с часами симулятора алгоритмы управления роботом могут запускаться на другом компьютере сети. В зависимости от выбранного языка MODA предоставляет библиотеки (.lib или.a) или.NET-сборки (.dll) для доступа к симулятору по сети. Программирование алгоритмов управления роботов возможно с помощью языков C/C++, C++ CLI, C#, J#, VB#.

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

В ноябре 2013 года вышел новый движок симулятора для Marilou - Exec V5. Бета-версия движка может работать на Windows, Ubuntu и Mint. Новый движок многопоточный, кросс-платформенный и использует OpenGL 2.1.

Code Rally: гонки на роботах

Code Rally (разработка IBM) нельзя назвать полноценным симулятором роботов. Если быть точным, Code Rally - симулятор гонок машин (бесплатный и с открытым исходным кодом).

Цель программиста - написать алгоритм управления движения машины («роботом») по трассе (кругу) с учетом следующих правил игры:

  1. В процессе движения машина должна проходить через контрольные точки, за что ей начисляются очки.
  2. Перемещаясь по трассе, машина тратит топливо, а также может расстреливать другие машины пулями.
  3. Машине доступны координаты заправочных станций, кассет с пулями и контрольных точек; трасса ограничена стенами, за пределы которых машина не может выехать.
  4. Допускается управление скоростью машины.
  5. На трассе могут находиться заправочные станции и кассеты с пулями. При заправке топливом машина должна оставаться неподвижной. Машина может включать защиту, но в это время в удвоенном объеме тратится топливо.
  6. Очки начисляются за проезд через контрольную точку (за проезд через точки в установленном порядке начисляется больше очков), за попадание в машину противника (подбитая машина теряет топливо) и за топливо, оставшееся на момент окончания гонки.

Побеждает машина, набравшая максимальное количество очков.

Тестировать свой алгоритм управления машиной можно на сервере (на своем компьютере), посоревноваться с друзьями по сети или запустить приложение на облачном сервере IBM (ведется рейтинг игроков).

Разработка алгоритма управления машиной выполняется в Eclipse на Java. Так что, занимаясь симуляторами, можно не только развлечься, но и Java подтянуть. В симуляторе доступно шесть трасс различной степени сложности.

Algodoo: специализированный симулятор физики

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

Может показаться, что данный симулятор неполноценен в том смысле, что позволяет проектировать и исследовать только «плоских» роботов. Однако ты можешь сначала спроектировать 2D-робота, а потом создать в реале его трехмерную версию. Пример показан здесь (2:07): goo.gl/wzQ7q4 . В Algodoo встроен скриптовый язык программирования Thyme, который добавляет большую свободу действий в симуляторе. В Thyme доступны переменные, условный оператор, массивы, обработка событий, происходящих в песочнице (среде моделирования).

История Algodoo началась с игры Phun, которую разработал швед Эмиль Эрнерфельдт (это была его магистерская работа). Поддерживаемые ОС: Windows, OS X, iOS. На сайте доступна библиотека AlgoBox, в которой есть куча обучающих материалов и примеров разработки. Также посмотри

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

Различаются они не только производителями, но и способами и возможностями программирования, типами крепежей, а также материалами.

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

LEGO Mindstorms

Конструктор выпускается в двух типах:

  • детский;
  • продвинутый.

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

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

Продвинутый же набор открывает намного больший простор для фантазии. Он существует в нескольких вариантах и поколениях (на данный момент поколений три). Они отличаются количеством деталей, наличием дополнительных микрокомпьютеров, а также различными датчиками и другими приборами. Микрокомпьютеры этой серии оснащены операционной системой Linux. Эти схемы поддерживают не только специальные языки программирования, но и C++, C и даже Python.

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

Лего держит пальму первенства в роботах-конструкторах уже более десяти лет. Устраиваются соревнования по созданию , где главным призом чаще всего оказывается бюджетное место в престижном ВУЗе.

LEGO Mindstorms – один из 17 вариантов сборки

HUNA

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

Узнать больше об увлекательных металлических конструкторах для мальчиков можно .

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

В качестве “мозга” железных комплектов выступает контроллер Arduino, на котором уже стоит специальная прошивка. Среда программирования тут – обычный C-образный язык для Arduino, но для большего удобства его визуализировали.

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

Makeblock

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

Все детали Makeblock выполнены из алюминия, на который электростатическим методом нанесена краска (примерно, как и на автомобили). Таким образом, вероятность того, что со временем детали будут выглядеть неказисто, стремится к нулю.

Из интересных моделей следует заметить те, которые выполняют рисунки, среди них:

  • mScara – робо-рука, на которую можно вместо маркера поставить лазер;
  • mSpider – он рисует в вертикальных плоскостях, подобно пауку перемещаясь на ниточках;
  • mCar – машинка, которая рисует маркером там, где она ездит.

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

#Структор

Этот конструктор производится в России и отличается от других тем, что его детали выполнены из вспененного ПВХ. Их толщина составляет пять миллиметров, что позволяет создавать небольшие, но достаточно прочные конструкции.

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

Достоинства ПВХ:

  • низкая стоимость;
  • простота обработки – достаточно лишь вооружиться ножом, карандашом и линейкой;
  • высокая прочность;
  • влагоустойчивость;
  • пожаробезопасность – температура возгорания листового ПВХ превышает 400 градусов Цельсия.

Малую прочность конструкции производители предлагают решить двумя способами. Первый – просто склеить детали. Лучше всего для таких целей подойдет специальный клей “Космофен”. Второй способ – объединить #Структор с советским (или аналогичным) железным конструктором.

#Структор от “Амперка”

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

Управление элементами #Структор производится на Arduino. А благодаря универсальности материала, из которого изготовлены элементы конструктора, любой датчик, сервопривод или мотор легко внедряются в конструкцию.

Vex

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

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

Только в наборах корейской компании Vex встречаются коробки передач или колеса Илона.

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

Примечательной особенностью является также наличие ПО VEX Assembler. Это 3D редактор, в котором вы можете придумать и испытать своего робота до того, как начнете его строить вживую.

VEX Robotics by HEXBUG

FischerTechnik

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

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

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

В продаже имеется два типа контроллеров:

  • Robo TX;
  • Robo TXT.

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

Программирование происходит на бесплатной программе Robo Pro. Все команды задаются при помощи логических блоков, что позволяет обучить ребенка азам программирования в игровой форме.

ТРИК

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

На данный момент имеется четыре типа наборов:

  • стартовый;
  • образовательный;
  • школьный;
  • соревновательный.

Их различие в количестве деталей и электроники. Во всех наборах вы найдете микроконтроллер, микрофон и видеокамеру или датчики, светодиоды и колеса.

Микроконтроллер ТРИК работает на Linux и имеет на борту процессор с 24 мегагерцами и целые 256 Мбайт оперативной памяти. Также ее можно расширить за счет Flash-карты.

Набор для сборки ТРИКС

Создатели данного конструктора решили не привязывать контроллер к одной среде программирования. Поэтому он поддерживает C, C++, Python и даже Java. Для тех, кто только изучает программирование, имеется специальная среда программирования, предназначенная для контроллера ТРИК.

Так как контроллер поддерживает множество команд, для удобства управления имеется приложение для смартфонов под управлением Android. Команды передаются при помощи Wi-Fi.

MOSS


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

  1. Зеленые – передача электричества от аккумулятора.
  2. Красные – вход данных.
  3. Коричневые грани – выход данных.
  4. Голубые – эти грани передают и электричество и данные. Они нужны для того, чтобы соединять детали при помощи гибкого элемента.

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

Robo Wunderkind от MOSS

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

Вторая же программа направлена на тех, кто хорошо в нем разбирается. Она компилирует ваш код и переносит его в контроллер. Обе эти программы работают на Windows и Mac OS, но не поддерживаются Linux.

Для удаленного правления роботом MOSS существует сразу несколько программ для мобильных устройств. Это и пульты управления, экспорт данных с датчиков, рисование графиков и многое другое. Все программы доступны для iOS, а некоторые и для Android.

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

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

Робот MECCANO, управляемый с помощью смартфона или планшета

Видео

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

Чтобы выбрать конструктор, нужно определиться, для кого он:

  • LEGO Mindstorms лучше всего подойдет ребенку, который увлекается роботами. А так как у большинства детей есть обширная коллекция LEGO, фантазия ребенка будет поистине безграничной.
  • Если вы разыскиваете конструктор для себя, то стоит обратить внимание на ТРИК или #Структор, так как они оба совместимы с советским железным конструктором, а второй к тому же, еще, и выполнен из ПВХ.
  • Но, так или иначе, эти конструкторы очень сильно улучшат способности вашего ребенка к логическому мышлению, а также подготовят его к тому, что будет ждать его в школе или институте.

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

Для iPad — образовательного приложения для кодирования. Приложение позволяет программировать роботов, дронов и музыкальных инструментов на Swift — языке от Apple.

“Несмотря на то, что Swift предназначен в первую очередь для разработчиков iOS и mac OS, приложение также позволит понять общие концепции программирования, зная которые, можно смелее начать изучение любого понравившегося языка программирования и углубляться в его тонкости”, — говорит Илья Вислоцкий, руководитель департамента разработки Stack Group.

“В прошлом, если человеку захотелось разобраться, как работают программы, или хотел попробовать себя в программировании, то у него не было выбора, кроме как сразу использовать профессиональные IDE”, — отмечает Илья Вислоцкий. Сейчас создано уже довольно много учебных программ, они позволяют привлечь детей в программирование и разобрать основные конструкции алгоритмизации (условие, цикл, подпрограммы). «Я сам часто играю в подобные игры, например Lightbot. На мой взгляд вдвойне полезно, если программа ограничивает алгоритм по количеству операций, так как задание можно выполнить множеством способов, стремясь к самому эффективному», — добавляет Максим Бекурин, тренер по робототехнике центр «Техноit».

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

Универсальная платформа взаимодействует с пятью моделями:

  1. С помощью популярного набора LEGO MINDSTORMS EV3 миллионы детей по всему миру могут кодировать и управлять моторами и датчиками своих учебных роботов.
  2. Роботизированный шар Sphero SPRK + умеет вращаться, катиться, поворачиваться, ускоряться и менять цвет. С Swift Playgrounds станет возмножным контролировать шар с помощью датчиков, обеспечивающих обратную связь.
  3. Под управлением кода на Swift дроны Parrot Mambo, Airborne и Rolling Spider могут взлетать, приземляться, поворачиваться и выполнять различные трюки.
  4. Робота UBTECH Jimu Robot MeeBot Kit можно запрограммировать и научить его ходить, наклоняться и танцевать.
  5. Робот от Wonder Workshop иллюстрирует основные принципы написания кода. С Swift Playgrounds он поможет ученикам младших классов изучить программирование на практике.

“Возможность подключения к нескольким роботам является безусловным плюсом, создавая этим самым дополнительное направление изучения робототехники. К тому же, учитывая многолетнюю работу компании Apple, можно с уверенностью сказать, что они будут и дальше развивать это приложение, чтобы оно подходило и для крупных серьезных проектов”, — отмечает Александр Кормильцев, преподаватель отделения политехнического образования Дворца молодежи, Екатеринбург.

Swift Playgrounds совместим со всеми моделями iPad Air, iPad Pro и iPad mini 2, а также с iOS 10 или более поздними версиями.

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

А кроме самого материала также комментарии одного из наших робо-экспертов, куратора екатеринбургского , Олега Евсегнеева.

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

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

1. Системное мышление

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

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

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

2. Мышление программиста

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

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

Комментарий Олега Евсегнеева: Я бы добавил, что для создания современных роботов требуется знание языков низкого, высокого и даже сверхвысокого уровня. Микроконтроллеры должны работать очень быстро и эффективно. Чтобы этого достичь, нужно углубляться в архитектуру вычислительного устройства, знать особенности работы с памятью и низкоуровневыми протоколами. Сердцем робота может быть тяжелая операционная система, например, ROS. Здесь уже может понадобиться знание ООП, умение пользоваться серьезными пакетами машинного зрения, навигации и машинного обучения. Наконец, чтобы написать интерфейс робота в веб и связать его с сетью интернет, неплохо будет научиться скриптовым языкам, тому же python.

3. Способность к самобучению

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

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

Комментарий Олега Евсегнеева: Это ключевой навык в любом творческом деле. С помощью него можно получить другие навыки

4. Математика

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

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

5. Физика и прикладная математика

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

Комментарий Олега Евсегнеева: Есть хороший пример – автоматические станции для полета на другие планеты. Знание физики позволяет настолько точно рассчитать траекторию их полета, что спустя годы и миллионы километров аппарат попадает в точно заданную позицию.

6. Анализ и выбор решения

Быть хорошим робототехником означает постоянно принимать инженерные решения. Что выбрать для программирования - ROS или другую систему? Сколько пальцев должен иметь проектируемый робот? Какие датчики выбрать для использования? Робототехника использует множество решений и среди них почти нет единственно верного.

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



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png