Какой тип двигателей используют в роботах.

На втором занятии мы детальнее познакомимся со средой программирования и подробно изучим команды, задающие движение нашему роботу-тележке, собранному на первом занятии. Итак, давайте запустим среду программирования Lego mindstorms EV3, загрузим наш проект lessons.ev3, созданный ранее и добавим в проект новую программу - lesson-2-1. Программу можно добавить двумя способами:

  • Выбрать команду "Файл"-"Добавить программу" (Ctrl+N) .
  • Нажать "+" на вкладке программ.

Рис. 1

2.1. Палитры программирования и программные блоки

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

Зеленая палитра называется: "Действие" :

Рис. 2

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

2.2. Зеленая палитра - блоки действия

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

Рис. 3

Для правильной настройки блока управления большим мотором мы должны:

  1. Выбрать порт, к которому подключен мотор (A, B, C или D) (Рис. 3 поз. 1)
  2. Выбрать режим работы мотора (Рис. 3 поз. 2)
  3. Настроить параметры выбранного режима (Рис. 3 поз. 3)

Чем же отличаются режимы? Режим: "Включить" включает мотор с заданным параметром "Мощность" и после этого управление передается следующему программному блоку программы. Мотор будет продолжать вращаться, пока не будет остановлен следующим блоком "Большой мотор" с режимом "Выключить" или следующий блок "Большой мотор" не будет содержать другие параметры выполнения. Режим "Включить на количество секунд" включает большой мотор с установленной мощностью на указанное количество секунд, и только по завершению времени мотор остановится, а управление в программе перейдет к следующему программному блоку. Аналогично поведет мотор себя в режимах "Включить на количество градусов" и "Включить на количество оборотов" : только после выполнения установленного вращения мотора, он остановится и управление в программе перейдет к следующему блоку.

Параметр мощность (на Рис. 3 мощность установлена в 75) может принимать значения от -100 до 100. Положительные значения мощности задают вращение мотора по часовой стрелке, отрицательные - против часовой. При значении мощности равном 0 мотор вращаться не будет, чем "выше" значение мощности, тем быстрее вращается мотор.

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

Отдельно следует сказать о параметре "Тормозить в конце" . Данный параметр, если установлен в значение "Тормозить" заставляет мотор тормозить после выполнения команды, а если установлен в значение "Двигаться накатом" , то мотор будет вращаться по инерции, пока сам не остановится.

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

Рис. 4

Параметр "Рулевое управление" (Рис. 4 поз. 2 ) может принимать значения от -100 до 100. Отрицательные значения параметра заставляют робота поворачивать налево, при значении равном 0 робот движется прямо, а положительные значения заставляют робота поворачивать направо. Стрелка над числовым параметром меняет свою ориентацию в зависимости от значения, подсказывая тем самым направление движения робота (Рис. 5 ).

Рис. 5

Программный блок "Независимое управление моторами" похож на программный блок "Рулевое управление" . Он также управляет двумя большими моторами, только вместо параметра "Рулевое управление" появляется возможность независимого управления мощностью каждого мотора. При равном значении параметра "Мощность" для левого и правого мотора робот будет двигаться прямолинейно. Если на один мотор подать отрицательное значение мощности (например -50), а на второй - положительное значение (например 50), то робот будет разворачиваться на месте (Рис. 6 ).

Рис. 6

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

2.3. Прямолинейное движение, повороты, разворот на месте остановка

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

Задача 1: Проехать прямолинейно вперед на 4 оборота двигателя. Развернуться. Проехать на 720 градусов.

Решение (Рис. 7 ):

  1. Используя программный блок "Рулевое управление" проехать вперед на 4 оборота.
  2. Используя программный блок "Независимое управление моторами" развернуться на месте (значение градусов придется подобрать экспериментально).
  3. Используя программный блок "Рулевое управление" проехать вперед на 720 градусов.

Примечание: Почему при развороте пришлось подбирать значение градусов в блоке 2 ?. Разве не 360 градусов - искомая величина? Нет, если мы зададим значение параметра "Градусы" равным 360 , то тем самым заставим на искомую величину провернуться валы левого и правого моторов нашего робота. На какой угол провернется робот вокруг своей оси - зависит от размера (диаметра) колес и расстояния между ними. На Рис. 7 значение параметра "Градусы" равно 385 . Данное значение позволяет роботу, собранному по инструкции small-robot 45544 развернуться вокруг своей оси. Если у вас другой робот, то вам придется подобрать другое значение. Можно ли это значение найти математически? Можно, но об этом мы поговорим позднее.


Рис. 7

Задача 2: Установите на ровной поверхности какое-либо препятствие (банку, кубик, небольшую коробку), отметьте место старта вашего робота. Создайте в проекте новую программу: lesson-2-2, позволяющую роботу объехать вокруг препятствия и вернуться к месту старта.

Сколько программных блоков вы использовали? Поделитесь своим успехом в комментарии к уроку...

2.4. Экран, звук, индикатор состояния модуля

Программный блок "Экран" позволяет выводить текстовую или графическую информацию на жидкокристаллический экран блока EV3. Какое это может иметь практическое применение? Во-первых, на этапе программирования и отладки программы можно выводить на экран текущие показания датчиков во время работы робота. Во-вторых, можно выводить на экран название промежуточных этапов выполнения программы. Ну а в-третьих, с помощью графических изображений можно "оживить" экран робота, например с помощью мультипликации.

Рис. 8

Программный блок "Экран" имеет четыре режима работы: режим "Текст" позволяет выводить текстовую строку на экран, режим "Фигуры" позволяет отображать на экране одну из четырех геометрических фигур (прямая, круг, прямоугольник, точка), режим "Изображение" может вывести на экран одно изображение. Изображение можно выбрать из богатой коллекции изображений или нарисовать свое, используя редактор изображений. Режим "Окно сброса настроек" сбрасывает экран модуля EV3 к стандартному информационному экрану, показываемому во время работы программы.

Рис. 9

Рассмотрим параметры программного блока "Экран" в режиме "Текст" (Рис. 9 поз.1) . Строка, предназначенная для вывода на экран, вводится в специальное поле (Рис. 9 поз. 2) . К сожалению, в поле ввода текста можно вводить только буквы латинского алфавита, цифры и знаки препинания. Если режим "Очистить экран" установлен в значение "Истина" , то экран перед выводом информации будет очищен. Поэтому, если вам требуется объединить текущий вывод с информацией уже находящейся на экране, то установите этот режим в значение "Ложь" . Режимы "X" и "Y" определяют точку на экране, с которой начинается вывод информации. Экран блока EV3 имеет 178 пикселей (точек) в ширину и 128 пикселей в высоту. Режим "X" может принимать значения от 0 до 177, режим "Y" может принимать значения от 0 до 127. Верхняя левая точка имеет координаты (0, 0), правая нижняя (177, 127)

Рис. 10

Во время настройки программного блока "Экран" можно включить режим предварительного просмотра (Рис. 9 поз. 3) и визуально оценить результат настроек вывода информации.

В режиме "Фигуры" (Рис. 11 поз. 1 ) настройки программного блока меняются в зависимости от типа фигуры. Так при отображении круга необходимо будет задать координаты "X" и "Y" центра окружности, а также значение "Радиуса" . Параметр "Заполнить" (Рис. 11 поз. 2) отвечает за то, что будет отображен либо контур фигуры, либо внутренняя область фигуры будет заполнена цветом, заданным в параметре "Цвет" (Рис. 11 поз. 3) .

Рис. 11

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

Рис. 12

Чтобы отобразить прямоугольник следует задать координаты "X" и "Y" левого верхнего угла прямоугольника, а также его "Ширину" и "Высоту" .

Рис. 13

Отобразить точку проще всего! Укажите лишь её координаты "X" и "Y".

Режим "Изображение" , наверное, самый интересный и самый используемый режим. Он позволяет выводить на экран изображения. Среда программирования содержит огромную библиотеку изображений, отсортированную по категориям. В дополнение к имеющимся изображениям вы всегда можете создать свой рисунок и, вставив его в проект, вывести на экран. ("Главное меню среды программирования" - "Инструменты" - "Редактор изображения") . Создавая своё изображение, вы можете также вывести на экран символы русского алфавита.

Рис. 14

Как вы видите - отображению информации на экране главного модуля EV3 среда программирования придает огромное значение. Давайте рассмотрим следующий важный программный блок "Звук" . С помощью этого блока мы можем выводить на встроенный динамик блока EV3 звуковые файлы, тона произвольной длительности и частоты, а также музыкальные ноты. Давайте рассмотрим настройки программного блока в режиме "Воспроизвести тон" (Рис. 15) . В этом режиме необходимо задать "Частоту" тона (Рис. 15 поз. 1) , "Продолжительность" звучания в секундах (Рис. 15 поз. 2) , а также громкость звучания (Рис. 15 поз. 3) .

Рис. 15

В режиме "Воспроизвести ноту" вам вместо частоты тона необходимо выбрать ноту на виртуальной клавиатуре, а также установить длительность звучания и громкость (Рис. 16) .

Рис. 16

В режиме "Воспроизвести файл" вы можете выбрать один из звуковых файлов из библиотеки (Рис. 17 поз. 1) , либо, подключив к компьютеру микрофон, с помощью Редактора звука ("Главное меню среды программирования" - "Инструменты" - "Редактор звука") записать собственный звуковой файл и включить его в проект.

Рис. 17

Давайте отдельно рассмотрим параметр "Тип воспроизведения" (Рис. 17 поз. 2) , общий для всех режимов программного блока "Звук" . Если данный параметр установлен в значение "Ожидать завершения" , то управление следующему программному блоку будет передано только после полного воспроизведения звука или звукового файла. В случае установки одного из двух следующих значений начнется воспроизведение звука и управление в программе перейдет к следующему программному блоку, только звук или звуковой файл будет воспроизведен один раз или будет повторяться, пока не его не остановит другой программный блок "Звук" .

Нам осталось познакомиться с последним программным блоком зеленой палитры - блоком . Вокруг кнопок управления модулем EV3 смонтирована цветовая индикация, которая может светиться одним из трех цветов: зеленым , оранжевым или красным . За включение - выключение цветовой индикации отвечает соответствующий режим (Рис. 18 поз. 1) . Параметр "Цвет" задает цветовое оформление индикации (Рис. 18 поз. 2) . Параметр "Импульсный" отвечает за включение - отключение режима мерцания цветовой индикации (Рис. 18 поз. 3) . Как можно использовать цветовую индикацию? Например, можно во время различных режимов работы робота использовать различные цветовые сигналы. Это поможет понять: так ли выполняется программа, как мы запланировали.

Рис. 18

Давайте используем полученные знания на практике и немного "раскрасим" нашу программу из Задачи 1.

Задача 3:

  1. Воспроизвести сигнал "Start"
  2. Включить зеленую немигающую цветовую индикацию
  3. "Forward"
  4. Проехать прямолинейно вперед на 4 оборота двигателя.
  5. Включить оранжевую мигающую цветовую индикацию
  6. Развернуться
  7. Включить зеленую мигающую цветовую индикацию
  8. Отобразить на экране изображение "Backward"
  9. Проехать на 720 градусов
  10. Воспроизвести сигнал "Stop"

Попробуйте решить задачу 3 самостоятельно, не подглядывая в решение! Удачи!

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

Крутящий момент

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

Некоторые употребляют вместо понятия крутящий момент , термин вращающий момент . По сути это одно и то же. И то и другое являются моментами, просто в технике крутящий момент — это нагрузка на колесе, а вращающий момент — нагрузка в технической науке под названием «Сопротивление материалов» .

Рассмотрим сильно упрощенную идеализированную модель колесного робота.

В нашем случае, вес робота равен 1кг , и мы хотим добиться максимальной скорости его движения 1м/с при радиусе колеса равном 20мм .

При движении по прямой на расстояние , рассчитаем ускорение, необходимое для достижения скорости в 1м/с .

где — расстояние, пройденное роботом, — его начальная скорость (стартуем с места, поэтому ),

где — скорость робота, -его ускорение.

Подставим значения, принятые в нашей модели, получим

м/с 2

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

При — момент инерции и — угловое ускорение, получим

Здесь м/с 2 — ускорение свободного падения (округлим его до 10), — радиус колеса, — масса всего робота

Подставив значения, получим

мН·м

Для перевода величины, выраженной в Н·м в кг·см нужно учесть, что 1Н = 0.102 кг и 1м = 100 см. Поэтому 50 мН·м = 50 · 0.102: 1000 * 100 = 0.51 кг · см.

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

Мощность

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

(об/мин ) =

или в радианах в секунду

(рад/с ) =

через круговую частоту

Подставив радиус колеса, получим

рад/с

об/мин .

Мощность двигателей пропорциональна крутящему моменту и частоте вращения:

Подставив сюда формулы для крутящего момента и частоты, получим:

Используя собственные значения, получим

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

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

В робототехнике в основном используются три типа двигателей : двигатели постоянного тока, шаговые двигатели, сервоприводы и типа RC (с радиоуправлением).

Каких размеров, какой мощности двигатель нужно использовать?

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

  • два ведущих колеса подключены к одному двигателю и другие два колеса поворачивают. Одним словом робот выглядит как автомобиль;
  • два ведущих колеса подключены к одному двигателю и одно колесо в качестве рулевого;
  • два колеса подключены к двум разным двигателям и еще два колеса в качестве балансирующих (наиболее распространенный вариант ), получается танк на колесах.

Если классифицировать мощность двигателя, то получим следующее:

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

Давайте посмотрим, на положительные и отрицательные стороны каждого из двигателей.

Электродвигатели постоянного тока

Преимущества:
— Легко доступны на рынке
— Широкий спектр двигателей
— Самые мощные
— Легко подключить
— Не обязательно использовать для больших роботов

Недостатки:
— Слишком быстрые, необходим редуктор
— Большое потребление
— Трудно установить колеса
— Дороже

Лучше всего подходит для:
— Больших роботов

Серво-двигатели:

Преимущества:
— Встроенный редуктор
— Разнообразие
— Не такие дорогие
— Подходящая мощность для маленьких роботов
— Простота установки
— Среднее потребление энергии

Недостатки:
— Не подходят для больших роботов
— Довольно низкая скорость

Лучше всего подходит для:
— Небольших роботов
— Роботов с ногами

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

Бесщеточный двигатель постоянного тока

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

Достоинства БДП следующие:

  • Быстродействие относительно характеристик вращающего момента;
  • Более высокая частота вращения;
  • Высокие динамические характеристики;
  • Длительный срок службы;
  • Бесшумная работа.

Недостатки:

  • Сложный и дорогостоящий регулятор скорости;
  • Не работает без электроники.

Синхронный привод

Данный двигатель содержит ротор, который синхронно вращается с колеблющимся полем или током. Синхронные приводы имеют множество преимуществ перед другими двигателями. В первую очередь это относится к энергетическим показателям. Данные приводы используются в выпускаемых промышленных роботах со средней грузоподъемностью и числом степеней подвижности от 3 до 6. Точность позиционирования электрического привода достигает значений до ± 0,05 мм. Их применяют как в позиционном, так и в контурном режимах работы.

Преимущества:

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

Недостатки:

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

Асинхронный двигатель

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

Преимущества:

  • Простота и надежность из-за отсутствия коллектора;
  • Низкая стоимость;
  • Значительно низкая масса;
  • Меньшие габариты.

Недостатки:

  • Могут перегреваться, особенно под нагрузкой;
  • Невозможность стабильно держать частоту вращения;
  • Относительно небольшой пусковой механизм.

Шаговый двигатель

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

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

Преимущества:

  • Главное преимущество - точность работы. При подаче потенциалов на обмотки двигатель повернется строго на определенный угол;
  • Низкая стоимость;
  • Подходит для автоматизации отдельных механизмов и систем, где нет необходимости в высокой динамике.

Недостатки:

  • Присутствует проблема «проскальзывания» ротора при повышенной нагрузке на вал;
  • Ограничение шагов (максимум 1000 об/мин).

Сервопривод

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

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

Преимущества:

  • Более высокая скорость вращения;
  • Высокая мощность;
  • Позиция механизма всегда на виду и доступна для корректирования.

Недостатки:

  • Сложная система подключения и управления;
  • Требует квалифицированного обслуживания;
  • Высокая стоимость.

Пневматический привод

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

Преимущества:

  • Простота и экономичность;
  • Рабочее тело не ограничено заданным объемом и может пополняться в случае утечки;
  • Вместо компрессора можно использовать баллон со сжатым газом, что упрощает построение пневматической системы;
  • Менее чувствителен к изменениям температуры окружающей среды.

Недостатки:

  • Более низкий КПД;
  • Высокая стоимость пневматической энергии по сравнению с электрической;
  • Нагревание и охлаждение рабочего газа в компрессорах, что может привести к возможности обмерзания систем или наоборот конденсации водяных паров из рабочего газа.

Гидравлический привод

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

Преимущества:

  • Небольшие размеры и масса;
  • Высокая производительность - развивает силу в 25 раз выше, чем пневмопривод аналогичного размера;
  • Плавное регулирование силы;
  • Рабочая температура - от -50 до +100С.

Недостатки:

  • При высоком давлении возможны утечки жидкости;
  • Высокая стоимость оборудования и обслуживания;
  • Непрерывное потребление энергии;
  • Сложно отслеживать точность работы.

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