Предисловие автора к третьему изданию
РОССИЙСКАЯ АКАДЕМИЯ НАУК
Институт проблем машиноведения
Серия «Шаги в кибернетику»
С. А. Филиппов
Робототехника для детей и родителей
Под редакцией д-ра техн. наук, проф.
А. Л. Фрадкова
Издание 3-е, дополненное и исправленное
Санкт-Петербург
«НАУКА»
2013
УДК 621.86/.87
ББК 32.816
Ф53
Филиппов С.А. Робототехника для детей и родителей. – СПб.: Наука,
2013. 319 с.
ISBN 978-5-02-038-200-8
Уже много лет мы читаем в книгах и газетах, слышим по радио и из телевизора, что скоро нас будут окружать умные, добрые и интересные роботы. Однако в реальной жизни роботов все нет и нет. Лишь несколько лет назад знаменитая датская компания Lego сделала роскошный подарок любителям мехатроники, роботов и других кибернетических игр и игрушек: выпустила робототехнический конструктор Lego Mindstorms NXT, который с успехом используется как дома, так и в учебе.
Эта книга одна из первых на русском языке поможет не только самому строить и программировать разнообразных роботов из Lego, но и научить этому других школьников, студентов. В ней рассматриваются основы конструирования, программирования на языках NXT-G, Robolab и RobotC, а также элементы теории автоматического управления.
В третьем издании добавлены описания усовершенствованых конструкций роботов, а также рассмотрены новые задачи: прохождение лабиринта, роботыманипуляторы, инверсная линия и др. По-прежнему большое внимание уделено алгоритмам управления: от П- и ПД-регулятора для движения по линии до ПИДрегулятора для балансирующего робота-сигвея.
|
|
Предназначена для преподавателей кружков робототехники школ и вузов, для широкого круга читателей.
Рецензент
д-р техн. наук, проф. Б. Р. Андриевский
ISBN 978-5-02-038-200-8 © С.А. Филиппов, 2013
© Издательство «Наука», 2013
ОГЛАВЛЕНИЕ
Предисловие..............................................................................................................8
Предисловие автора к третьему изданию............................................................10
Глава 1. Знакомство с конструктором ................................................................11
Введение...............................................................................................................11
Как он может попасть к Вам в руки.....................................................................12
Наборы для школы и дома...................................................................................14
Основной состав набора: что мы купили?...........................................................15
Электроника ................................................................................................................15
Детали для конструирования .....................................................................................18
Что потребуется еще?.................................................................................................18
|
|
Обзор дополнительных возможностей................................................................19
Программное обеспечение...................................................................................20
Зарубежные разработки..............................................................................................20
Отечественные разработки.........................................................................................23
Глава 2. Конструирование....................................................................................24
Способы крепления деталей ................................................................................24
Различия принципов конструирования RIS и NXT..................................................24
Первая игра: фантастическое животное....................................................................25
Высокая башня............................................................................................................26
Механический манипулятор ......................................................................................26
Механическая передача .......................................................................................28
Передаточное отношение...........................................................................................29
Волчок..........................................................................................................................33
Редуктор.......................................................................................................................36
Глава 3. Первые модели........................................................................................38
Моторы вперед!....................................................................................................38 NXT Program................................................................................................................38
|
|
NXT-G..........................................................................................................................39
Robolab 2.9...................................................................................................................40
RobotC..........................................................................................................................40
Тележки................................................................................................................41
Одномоторная тележка...............................................................................................41
Полноприводная тележка...........................................................................................44
Тележка с автономным управлением........................................................................45
Тележка с изменением передаточного отношения...................................................50 Робот-тягач..................................................................................................................52
Шагающие роботы ...............................................................................................57 Введение ......................................................................................................................57
Четвероногий пешеход...............................................................................................59
Универсальный ходок для NXT 2.0...........................................................................66
Маятник Капицы..................................................................................................73
Двухмоторная тележка.........................................................................................75 Трехточечная схема ....................................................................................................75
|
|
Простейшая тележка...................................................................................................76
Программирование без компьютера..........................................................................82
Компактная тележка ...................................................................................................89
Полный привод............................................................................................................91
Глава 4. Программирование в NXT-G................................................................93
Введение...............................................................................................................93
Знакомство с NXT-G............................................................................................93
Новая программа.........................................................................................................94
Интерфейс NXT-G ......................................................................................................95
Ветвления.....................................................................................................................97
Циклы...........................................................................................................................98
Переменные.................................................................................................................98
Robo Center...........................................................................................................99
TriBot..........................................................................................................................100
RoboArm.....................................................................................................................101
Spike ...........................................................................................................................103
Alpha Rex ...................................................................................................................104
Глава 5. Программирование в Robolab.............................................................107
Введение.............................................................................................................107
Режим «Администратор»...................................................................................108
Режим «Программист».......................................................................................109
Основные окна ..........................................................................................................110
Готовые примеры программ.....................................................................................111
Взаимодействие с NXT.............................................................................................112
Типы команд ......................................................................................................113
Команды действия..............................................................................................114
Базовые команды.......................................................................................................115
Продвинутое управление моторами........................................................................116
Моторы NXT .............................................................................................................119
Команды ожидания ............................................................................................120
Ожидание интервала времени..................................................................................120
Ожидание показаний датчика..................................................................................122
Ожидание значения контейнера ..............................................................................123 Ожидание значения таймера....................................................................................123 Управляющие структуры...................................................................................124 Задачи и подпрограммы ...........................................................................................125
Ветвления...................................................................................................................126.... 4
Глава 6. Программирование в RobotC........................................................................... 148
Введение................................................................................................................................. 148
Firmware............................................................................................................................. 148
Hello, world!....................................................................................................................... 149
Структура программы.................................................................................................. 150
Управление моторами........................................................................................................ 150
Состояние моторов........................................................................................................ 150
Встроенный датчик оборотов..................................................................................... 151
Синхронизация моторов............................................................................................... 152
Режим импульсной модуляции................................................................................... 153
Прыжки......................................................................................................................130
Циклы.........................................................................................................................131
События .....................................................................................................................135
Модификаторы...................................................................................................135
Модификаторы-константы.......................................................................................137
Контейнеры........................................................................................................138
Операции с выражениями ........................................................................................143
Интерфейс NXT..................................................................................................145
Библиотеки пользователя...................................................................................147
Зеркальное направление...........................................................................................154
Датчики ..............................................................................................................154
Настройка моторов и датчиков................................................................................154
Тип датчика ...............................................................................................................156
Задержки и таймеры...........................................................................................157
Задержки....................................................................................................................157
Таймеры.....................................................................................................................157
Параллельные задачи.........................................................................................158
Управление задачами................................................................................................158
Работа с датчиком в параллельных задачах............................................................160
Параллельное управление моторами.......................................................................160
Графика на экране NXT............................................................................................162
Массивы.....................................................................................................................165
Операции с файлами.................................................................................................167
Глава 7. Алгоритмы управления.......................................................................170
Релейный регулятор...........................................................................................170
Управление мотором ................................................................................................171
Движение с одним датчиком освещенности...........................................................172
Движение с двумя датчиками освещенности .........................................................174 Пропорциональный регулятор...........................................................................176
Описание....................................................................................................................176
Управление мотором ................................................................................................176
Синхронизация моторов...........................................................................................180
Взять азимут..............................................................................................................181
Следование за инфракрасным мячом......................................................................184
Движение по линии...................................................................................................185
Движение по линии с двумя датчиками..................................................................187
Движение вдоль стенки............................................................................................188
Пропорционально-дифференциальный регулятор ............................................190
Движение вдоль стенки на ПД-регуляторе.............................................................190
Движение по линии...................................................................................................193
Кубическая составляющая.................................................................................194
Плавающий коэффициент..................................................................................195
ПИД-регулятор...................................................................................................196
Формат RAW.............................................................................................................198
Элементы теории автоматического управления в школе..................................200
Глава 8. Задачи для робота.................................................................................204
Управление без обратной связи.........................................................................204
Движение в течение заданного времени вперед и назад .......................................204
Повороты ...................................................................................................................207
Движение по квадрату..............................................................................................208
Управление с обратной связью..........................................................................209
Обратная связь...........................................................................................................209
Точные перемещения................................................................................................209
Кегельринг..........................................................................................................210
Танец в круге.............................................................................................................210
Не упасть со стола.....................................................................................................212
Вытолкнуть все банки...............................................................................................212
Не делать лишних движений....................................................................................215
Движение по спирали ...............................................................................................220
Движение вдоль линии.......................................................................................224
Один датчик...............................................................................................................224
Два датчика................................................................................................................232
Слалом........................................................................................................................247
Инверсная линия.......................................................................................................248
Путешествие по комнате....................................................................................250
Маленький исследователь........................................................................................250
Защита от застреваний..............................................................................................251
Дополнительный датчик...........................................................................................253
Объезд предметов ..............................................................................................256
Новая конструкция....................................................................................................256
Поворот за угол.........................................................................................................257
Фильтрация данных..................................................................................................260 Роботы-барабанщики .........................................................................................262 Предыстория..............................................................................................................262
Калибровка и удар.....................................................................................................263
Управление с помощью датчика..............................................................................265
Создаем свой ритм....................................................................................................266
Барабанщик с двумя палочками...............................................................................268
Барабанщик на П-регуляторе...................................................................................269
Запоминание ритма...................................................................................................270
Лабиринт ............................................................................................................272
Виртуальные исполнители.......................................................................................272
Полигон......................................................................................................................272
Робот для лабиринта.................................................................................................273
Известный лабиринт.................................................................................................276
Правило правой руки................................................................................................279
Удаленное управление.......................................................................................281
Передача данных.......................................................................................................281
Кодирование при передаче.......................................................................................286
Дополнительный режим джойстика........................................................................292
Передача данных в RobotC.......................................................................................295
Роботы-манипуляторы.......................................................................................296
Стрела манипулятора................................................................................................296
Манипулятор с захватом ..........................................................................................298
Три степени свободы ................................................................................................300
Шестиногий робот .............................................................................................304
Заключение ...........................................................................................................309
Литература............................................................................................................310
Приложения ..........................................................................................................311
П.1. Названия деталей ......................................................................................311
П.2. Правила состязаний ..................................................................................312
Регламент соревнований роботов «Кегельринг»....................................................312
П.3. Интернет-ресурсы по Lego Mindstorms NXT............................................314
Языки и среды программирования для Lego Mindstorms NXT.............................314
Правила состязаний роботов....................................................................................314
Неофициальный гид изобретателя Lego Mindstorms NXT....................................315
Предисловие
Уже много лет мы читаем в книгах и газетах, слышим по радио и из телевизора, что скоро нас будут окружать умные, добрые и интересные роботы. Однако в реальной жизни роботов все нет и нет. И так же часто в научно-технических журналах мы читаем о мехатронике — удивительной науке на стыке механики, электроники, компьютеров и теории управления (кибернетики). Однако и мехатронными устройствами ученые тоже что-то не торопятся нас окружить.
И вот несколько лет назад знаменитая датская компания Lego сделала роскошный подарок любителям мехатроники, роботов и других кибернетических игр и игрушек: выпустила робототехнический конструктор Lego Mindstorms. Из него можно собрать не только фантастические человекоподобные и другие роботы, не только разнообразные мехатронные устройства, но и приборы для измерения, связи, контроля и т.п. Главное же, этот конструктор позволяет легко и с удовольствием научиться самому строить такие штуковины и учить этому молодежь, начиная с возраста 8—10 лет. Следующее поколение киберконструктора, Lego Mindstorms NXT, обладает новыми возможностями: общение по протоколу Bluetooth, богатый набор бортовых датчиков, включая видеокамеры. Неужели скоро мы сами сможем окружить себя кибернетическими помощниками?
Проблема только в одном: нет пока на русском языке подходящих учебников для такого обучения. Однако предлагаемая вниманию читателя книга позволяет, кажется, решить и эту проблему. Из ее названия как раз и ясно, что она предназначена научить практической робототехнике детей и родителей. Причем учить этому, пользуясь советами опытного наставника, который сам прошел все этапы кибертворчества.
Сергей Александрович Филиппов имеет опыт руководства кружками робототехники в нескольких школах Санкт-Петербурга. Ведет семинары и мастер-классы для школьных учителей, методистов, для членов команд города на олимпиадах по роботам. Сам ездит на олимпиады и конференции со своими замечательными учениками[1]. Наверное, поэтому книга получилась и увлекательной, и поучительной, и доступной. Поучительной не только для детей и родителей, купивших конструктор, но и для учителей школ, руководителей кружков и преподавателей вузов, стремящихся помочь своим ученикам сделать первые шаги в мир техники будущего, в мир робототехники и мехатроники.
Удовольствие от чтения получат даже те, у кого еще пока нет киберконструктора: книга, как золотой ключик, откроет дверь в фантастическую страну кибернетических игр и игрушек, удивительно похожих на многие серьезные автоматические приборы и системы.
Мне особенно приятно, что часть описанных в книге идей и приемов родилась в ходе нашего совместного проекта «Киберфизическая лаборатория», начатого в 2008 г. физико-математическим лицеем №239 и кафедрой теоретической кибернетики математико-механического факультета СПбГУ под эгидой института проблем машиноведения Российской академии наук (ИПМаш РАН) и поддержанного программой президиума РАН «Поддержка молодых ученых» и федеральной целевой программой «Научные и научно-педагогические кадры инновационной России».
Среди других проектов отмечу Санкт-Петербургские олимпиады по кибернетике, проводимые с 1999 г. ведущими вузами города под эгидой ИПМаш РАН. Дальнейшую информацию об олимпиадах, книгах и других наших проектах можно найти на сайте www.cyber-net.spb.ru.
Желая книге С. А. Филиппова успеха у читателей, отмечу и то, что за ней должны последовать другие, поскольку она открывает серию научно-популярных книг и учебных пособий «Шаги в кибернетику», предназначенную как для школьников и студентов, так и для родителей и преподавателей. Книги серии помогут выбрать будущую профессию, а тем, кто уже сделал свой выбор, помогут сделать первые шаги на пути к профессионализму, познакомиться «изнутри» с современной кибернетикой: роботами и киборгами, оптимизацией и адаптацией, искусственным интеллектом и управлением хаосом. Девиз серии «Учись играя» означает, что книги будут нацелены не только на обучение, но и на развлечение, на воспитание новых поклонников и фанатов увлекательной науки кибернетики, которой так много предстоит сделать в XXI веке.
В серии «Шаги в кибернетику» в 2011—2013 гг. вышли следующие книги:
В. Г. Быков «От маятника к роботу. Введение в компьютерное моделирование управляемых механических систем»,
Р. М. Лучин «Программирование встроенных систем. От модели к роботу»,
С. А. Филиппов «Робототехника для детей и родителей», 2-е и 3-е издания,
«Санкт-Петербургские олимпиады по кибернетике 1999—2012».
Зав. лабораторией «Управление сложными системами»
Института проблем машиноведения РАН доктор технических наук, профессор
А. Л. Фрадков
Предисловие автора к третьему изданию
Во третьем издании книги добавлено несколько тем, которые могут быть полезны начинающим робототехникам, улучшены иллюстрации, добавлены примеры на RobotC, а также исправлен ряд опечаток и ошибок.
Из нового отмечу следующие темы: улучшенная модель одномоторной тележки, робот для лабиринта, скоростной робот для движения по линии, робот-манипулятор, шестиногий шагающий робот, массивы и файлы в RobotC. Самые интересные алгоритмические примеры сосредоточены в главах «Алгоритмы управления» и «Задачи для робота».
Благодарю всех коллег и учеников, которые так или иначе приняли участие в работе над третьим изданием. Особенно рад выделить помощь Евгения Михайловича Сырова, благодаря содействию которого были выявлены многие неточности и опечатки.
Надеюсь, чтение этой книги будет интересным, а более всего принесут пользы практические опыты с роботами.
Пожелания и замечания прошу присылать по следующему адресу:
robobook@mail.ru.
Дата добавления: 2019-02-22; просмотров: 566; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!