Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год




Скачать 327.04 Kb.
Название Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год
страница 5/5
Тип Задача
rykovodstvo.ru > Руководство эксплуатация > Задача
1   2   3   4   5

Дополнительные задачи


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

Работа с сервомашинкой


Подключение сервомашинки (выдача определенного периода). Управление сервомашинкой при помощи потенциометра.

Поворот на источник света


Прикрепить беспаечную макетную плату с фоторезисторами к сервомашинке и заставить ее поворачиваться в сторону источника света. Либо прикрепить фоторезисторы на двусторонний скотч.

Решение робототехнических задач на мобильном роботе


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

Описание робота POP-BOT


Мы остановили свой выбор на робоконструкторе POP-BOT таиландской фирмы Innovative Experiment, как на самом доступном по цене и простом для новичков, при этом с богатым функционалом. Рассматривался также вариант Pololu 3pi, но вскоре стало ясно, что этот робот уже для более «продвинутых» робототехников, и его сложнее расширять в силу маленького размера.

Состав набора




Роботы POP-BOT продаются в магазинах и вполне доступны по цене (5,5 тыс.р. — сравнительно небольшая цена за полностью готового робота). Робот поставляется в коробке в разобранном виде, в комплекте есть отвёртки и инструкция по сборке. Практически все детали из комплекта можно купить по отдельности в магазине «Терраэлектроника», а значит, испорченную часть легко заменить.

Из периферии в наборе имеются: 2 оптических датчика освещённости, 2 кнопки, ИК-дальномер SHARP GP2D120, сервомашинка, ЖК-экран. Набор всевозможного крепежа, пластинок и уголков. Единственное, что потребуется, чтобы немедленно начать работу с POP-BOT — это питание. Аккумуляторов в наборе, разумеется, нет, так что необходимо подготовить 4 штуки АА. Прилагается хороший CD с программами, документацией, презентациями про Arduino и даже с видео. Подробнейшее и полное опечаток руководство пользователя - на английском (есть и на русском, в электронном виде).


Сборка


Сборка несложна и интересна для студентов.

Небольшое разочарование происходит при попытке прикрепиить ЖК-экран. В нем крепежные отверстия под 2,5 мм, а в наборе есть только 3 мм. Поэтому необходимо запастись крепежом помельче.

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

Программирование


На CD есть только дистрибутив Arduino 0017 под Windows. Если нет желания устанавливать уже устаревшую среду (самая новая — Arduino 0022), или нет возможности (например, если стоит Linux), то нужно сделать всего 2 несложные манипуляции:

  1. Установить среду (в Linux - из-под эмулятора wine) и достать оттуда примеры (папка POP-BOT), положить в arduino/examples. Потом эту версию можно удалить.

  2. Добавить в arduino/hardware/arduino/boards.txt дополнительный фрагмент.

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

Устройство платы


В качестве платы используется модуль POP-168. Он является Arduino-совместимым. Если сравнить с Arduino Nano, то бросается в глаза немного другое расположение выводов, и «урезанность» платы: D10, D11, D12, D13 заняты под разъём ISP-программатора и не выведены сбоку. Но, как бы то ни было, все выводы можно использовать. Нет стабилизатора на 5В (он есть на «большой» плате) и 3.3В.

Выведены 7 аналоговых входов. К ним подключается через разъёмы JST (Japanese Solderless Terminal) вся периферия (датчики, экран). Расположение выводов такое же, как у ИК-дальномеров SHARP GP2D120 и модулей DFRobot, так что дополнительные устройства подключаются без труда. Разъёмы с ключами, так что при всём желании их нельзя вставить неправильно. Их трудно вынимать из гнезда, приходится подцеплять ногтями или щипчиками. На практике обжимка таких разъёмов сложна из-за небольших размеров. Продаются в магазине «Кварц», если необходимо подключить к роботу что-либо не из набора. Для сервомашинок — два отдельных выхода, сделаны тоже с учетом стандартного расположения проводов у сервомашинки. Экран снабжен встроенным контроллером и соединяется с основной платой по интерфейсу RS-232. На плате робота не выведен отдельно аппаратный UART, поэтому экранчик подсоединяется при помощи SoftwareSerial на свободном выходе.

Остальные выводы: 2 кнопки (в режиме входа)/светодиода (в режиме выхода), ценный аналоговый вход А0 работает как выход и занят под динамик. 4 выхода заняты для управления моторами, 4 выведены на программатор. Ещё 2 — RX и TX. Выходит, подключить можно сразу всё, что есть в комплекте: сервомашинку, ИК-дальномер, 2 кнопки, 2 датчика полосы, экранчик, и ещё останутся свободные выводы.

К сожалению, заняты оба вывода с внешним прерыванием. Но проблема невелика. Почти на всех выводах микроконтроллера ATMega88/168/328 можно включить внешние прерывания по смене состояния (с высокого на низкое) — называется PinChangeInterrupt, есть библиотека PCInt. Зато, что гораздо важнее, свободны выводы SDA и SDL для подключения устройств с интерфейсом I2C.

Задачи с роботом

1. Сборка робота


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

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

Когда эти функции отлажены, хорошим заданием на дом будет поместить их в объекты класса «Мотор», то есть переписать эту несложную программу в С++. В конструктор мотора передаются два номера вывода. У мотора есть методы «Вращаться вперёд», «Вращаться назад», «Остановиться». В качестве параметров туда передаётся скорость. Также можно вынести всё в отдельный файл и использовать как библиотеку для дальнейших проектов. Для этого нужно посмотреть, как устроены библиотеки Arduino и оформить аналогично.

2. Отъезд от препятствий


В этой задаче необходимо подсоединить кнопки к роботу и заставить его отъезжать от препятствий при касании. Дополнительный вариант этой задачи — подключить ИК-дальномер SHARP GP2D120 и отъезжать при встрече с препятствием на расстоянии.

Код, имеющийся в примерах (файл BumperRobot.pde), вполне работает, но полезнее написать его самостоятельно, чтобы освоить работу со входами.

3. Езда по линии с одним датчиком


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

4. Езда по линии с двумя датчиками


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

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

5. Калибровка


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

6. Езда с компасом


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

Компас HMC6352 подключается через интерфейс I2C. Купить его можно в магазине 4robots.ru. Вначале необходимо подключить компас к плате Arduino. Для этого нужно открыть в Интернете страничку про него на сайте sparkfun и посмотреть Wiring Example - схему подключения и пример программы. Затем можно поднести магнит (он есть в любом электромоторе) и посмотреть, как изменятся показания компаса.

Затем можно ставить компас на робота при условии, что заблаговременно подготовлен провод с разъёмами JST для подключения к плате робота.

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

7. Энкодеры


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

Возможно соорудить энкодеры из входящих в набор ИК-отражателей. Бумажные круги должны быть заранее нарисованы и распечатаны в AutoCAD. На каждом — по 20 чёрных и 20 белых полосок. Для начала, энкодеры нужно очень аккуратно закрепить так, чтобы датчик не тёрся о колесо, и при этом был бы достаточно близко к нему, чтобы различать полоски. Чтобы оценить, насколько точно закреплён датчик, необходимо написать простую программу, которая бы считала количество переходов между белым и чёрным и выводила их на экран компьютера. То, что видят в данный момент датчики (черную или белую полосу), удобно выводить на встроенных светодиодах D2 и D4.

На практике, если крутить колесо рукой и смотреть на счетчик полосок, и на левом, и на правом «пропадает» 2-3 полоски, то есть после полного оборота колеса датчик насчитывает около 37 переходов.

Самая простая задача с энкодерами — это выровнять скорости моторов, приведя их какой-либо заданной наперед скорости. Это получается при помощи ПИ-регулятора (Д-составляющая здесь была не очень критична).

Программа получается длинная и сложная.
1   2   3   4   5

Похожие:

Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Алтайского государственного университета
Автор: Кулаков К. М. старший преподаватель кафедры математики и прикладной информатики
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Учебно-методическое пособие для студентов Стоматологического факультета...
Зав кафедрой терапевтической стоматологии гбоу впо кубгму минздрава России, к м н, доцент А. А. Адамчик, к м н., ассистент В. В....
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Методические рекомендации по освоению учебного материала 2 Литература...
Автор: Рязанова О. В., ст преподаватель кафедры математики и прикладной информатики
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Введение в интеллектуальные системы
...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Клинические рекомендации (протокол) по оказанию скорой медицинской помощи при шоке
Автор: Б. Н. Шах, ассистент кафедры скорой медицинской помощи и хирургии повреждений Первого Санкт-Петербургского государственного...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Институт развития образования республики башкортостан развитие интеллектуальных
Развитие интеллектуальных и творческих способностей учащихся образовательных учреждений: Сборник авторских программ. – Уфа: Издательство...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Учебно-методический комплекс дисциплины фтд. 5 Практикум по переводу...
Автор программы: Александрова Е. В., старший преподаватель кафедры иностранных языков мггу
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Методические указания предназначены для руководителей практики и...
Составители: Заведующая кафедрой терапевтической стоматологии к м н., доцент Кочкина Н. Н., к м н., доцент Демина Р. Р., ассистент...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Крюков В. В. Философия : учебник Содержание Введение. С. 4
Содержание мировоззрения. Формы мировоззрения. Типы философских построений. Классификация философских теорий. Эволюция философского...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Методология создания интеллектуальных систем оценки профессиональной...
Методология создания интеллектуальных систем оценки профессиональной надежности
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Вологды Департамент Гуманитарной политики Управление образования...
Образовательная программа «Углубленное изучение математики» является программой естественно-научной направленности
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Рггу организация работы ученых секретарей диссертационных советов рггу
Организация работы ученых секретарей диссертационных советов рггу: практическое руководство. / Рггу; сост. Л. В. Тропкина, А. Б....
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Рггу организация работы ученых секретарей диссертационных советов рггу
Организация работы ученых секретарей диссертационных советов рггу: практическое руководство. / Рггу; сост. Л. В. Тропкина, А. Б....
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Исследование мочи на
Е. Ю. Тумилович ассистент кафедры токсикологической химии гбоу впо пгфа минздравсоцразвития России
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon План подготовки учащихся 9 класса к огэ-2016 по математики 2014-2015 учебный год
Введение государственной итоговой аттестации по математике в новой форме (гиа) в 9 классе вызывает необходимость изменения в методах...
Практикум по спецкурсу «Введение в робототехнику». Автор: Волкова Т. А., ассистент кафедры математики, логики и интеллектуальных систем в гуманитарной сфере рггу. 2011 год icon Инструкция Ассистент кафедры
Государственное образовательное учреждение высшего профессионального образования «Саратовский государственный технический университет»...

Руководство, инструкция по применению






При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск