ПЗ (Аппаратно-програмный модуль для макета интерактивного обучающего робота)
Описание файла
Файл "ПЗ" внутри архива находится в следующих папках: Аппаратно-програмный модуль для макета интерактивного обучающего робота, Клюшников Евгений. Документ из архива "Аппаратно-програмный модуль для макета интерактивного обучающего робота", который расположен в категории "". Всё это находится в предмете "дипломы и вкр" из 8 семестр, которые можно найти в файловом архиве ДВГУПС. Не смотря на прямую связь этого архива с ДВГУПС, его также можно найти и в других разделах. .
Онлайн просмотр документа "ПЗ"
Текст из документа "ПЗ"
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Дальневосточный государственный университет путей сообщения»
Естественно–научный институт
Кафедра «Вычислительная техника и компьютерная графика»
К ЗАЩИТЕ ДОПУСТИТЬ
Заведующий кафедрой
____________________
«_____»___________2017
Аппаратно-программный модуль для макета интерактивного обучающего робота
Выпускная квалификационная работа
ВКР.09.03.01.ИВТ.05.00.943-ПЗ
Студент 943гр. Е.В.Клюшников
подпись, дата
Руководитель
д.ф.-м.н., профессор В.А.Рукавишников
Нормоконтролер
к.т.н., доцент Е.В. Буняева
Хабаровск 2017
СОДЕРЖАНИЕ
Введение 3
1 Аппаратно-программный модуль лабораторного макета 4
1.1 Постановка задачи 4
1.2 Требования к модулю 4
1.3 Актуальность разработки роботов 5
1.4 Обзор аналогов 7
1.4.1 Робот T300 с механической рукой и гусеничным шасси 7
1.4.2 Smart Tracked Robot Car Chassis Caterpillar with Mechanical Arm 8
1.4.3 Mobile manipulator Robot car with Mechanical arm for remote control 8
1.4.4 DIY Acrylic robot arm 9
2 Программные и технические средства разработки аппаратно-программного модуля 11
2.1 Взаимодействие микрокомпьютера с компьютером 11
2.2 Взаимодействие Raspberry Pi с электрической платой Arduino 13
2.3 Программное обеспечение 15
2.3.1 Программирование микроконтроллера Arduino 15
2.3.2 Программное обеспечение для Raspberry Pi 15
2.3.2.1 Geany 17
2.3.2.2 Qt Creator 18
2.3.2.3 NetBeans 19
2.3.2.4 Eclipse 20
2.3.2.5 PyCharm 20
2.3.3 Программное обеспечение для связи Raspberry Pi с компьютером 22
2.3.3.1 Visual Studio 22
2.3.3.2 MonoDevelop 23
2.3.3.3 SharpDevelop 24
3 Реализация аппаратно-программного модуля 25
3.1 Разработка интерфейса пользователя 25
3.2 Программная часть интерфейса 26
3.3 Программное обеспечение Raspberry Pi 30
3.4 Аппаратное обеспечение 34
3.4.1 Датчики 34
3.4.2 Сервоприводы 43
4 Экономическая эффективность 46
4.1 Расчет затратным подходом 48
Заключение 51
Список использованных источников 52
Приложение А Листинг PC программы 55
Приложение Б Листинг Raspberry Pi программы 59
Приложение В Листинг Arduino программы 62
ВВЕДЕНИЕ
Робототехника представляет собой высокотехнологическую, наукоемкую инженерную отрасль, которая интенсивно развивается во всех передовых странах. Робототехнические системы в настоящее время широко используются в промышленности, на транспорте, в медицине, военном деле, космонавтике и в других областях. Альтернативы роботам не существует в ситуациях, когда выполнение некоторой задачи находится за пределами возможностей человека либо сопряжено с чрезмерной угрозой его здоровью и жизни [5].
Применение роботов позволяет значительно снизить участие человека в тяжелой и опасной работе. Постепенно роботы входят в обычную жизнь человека и позволяют удовлетворять каждодневные потребности. И как следствие современное общество нуждается в грамотных специалистах в этой области. В связи с этим обучение робототехнике студентов становится все больше актуальной и значимой задачей.
В данной пояснительной записке рассматривается один из множества вариантов разработки аппаратно-программного модуля для макета интерактивного обучающего робота. Данный модуль позволит студентам ДВГУПС получить начальное представление о создании роботов и о том, как они устроены. Еще одной и не менее важной задачей является возможность написания программ управления роботом. Используя данный модуль, студенты могут тестировать написанные ими программы, как для автоматического, так и для ручного управления роботом. Что позволит им получить практический опыт и облегчит разработку собственных проектов.
Рассмотренный аппаратно-программный модуль состоит из трех основных блоков – электрическая плата и программа управления датчиками и сервоприводами робота, одноплатный компьютер Raspberry Pi и программа обрабатывающая команды, программное обеспечение для персонального компьютера позволяющее отправлять команды роботу.
1 Аппаратно-програмный модуль лабораторного макета
1.1 Постановка задачи
Необходимо разработать аппаратно-программный модуль для роботизированного лабораторного макета для учебных и научных целей. Модуль представляет из себя электрическую плату и микропроцессор, взаимодействующие с компьютером. К плате требуется подключить следующие датчики:
– температурный датчик, измеряет температуру окружающей среды;
– датчик расстояния оптический, служит для бесконтактного определения расстояния до объекта;
– датчик Холла, показывает наличие/отсутствие магнитного поля;
– датчик расстояния – сонар, служит для определения расстояния посредством ультразвукового импульса;
– датчик вибрации, позволяет определять параметры вибрационных явлений;
– датчик освещенности, определяет освещенность окружающего пространства.
– датчик наклона, выдает сигнал в зависимости от того, в какую сторону наклонена капсула;
– датчик влажности, показывает влажность окружающей среды.
Данный модуль будет закреплен в корпусе робота и использоваться студентами университета. Главная задача это дать возможность обучающимся на практике попробовать свои знания в написании программ для удаленных систем и программ автоматического управления роботом.
1.2 Требования к модулю
Аппаратно-программный модуль должен удовлетворять следующим требованиям:
– наличие одноплатного компьютера Raspberry Pi;
– получение видеопотока на компьютере с камеры, подключенной к Raspberry Pi;
– наличие платы, отвечающей за управление датчиками и сервоприводами;
– возможность дистанционно записывать программу для платы с персонального компьютера;
– возможность управления сервоприводами;
– получение данных с датчиков и удобное для пользователя их отображение на персональном компьютере.
1.3 Актуальность разработки роботов
Робототехника – область науки и техники, ориентированная на создание роботов и робототехнических систем, предназначенных для автоматизации сложных технологических процессов и операций, в том числе, выполняемых в неопределённых условиях, для замены человека при выполнении тяжелых, утомительных и опасных работ.
Робототехника является одним из важнейших направлений научно- технического прогресса, в котором проблемы механики и новых технологий соприкасаются с проблемами искусственного интеллекта. Активное участие и поддержка Российских и международных научно-технических и образовательных проектов в области робототехники позволит ускорить подготовку кадров, развитие новых научно-технических идей, обмен технической информацией и инженерными знаниями, реализацию инновационных разработок в области робототехники в России и по всему миру.
В настоящее время робототехника превратилась в развитую отрасль промышленности: тысячи роботов работают на различных предприятиях мира, подводные манипуляторы стали непременной принадлежностью подводных исследовательских и спасательных аппаратов, изучение космоса опирается на широкое использование роботов с различным уровнем интеллекта. Особенное внимание уделяется автоматизации тяжелых, вредных, утомительных и монотонных работ в различных отраслях с помощью роботов-манипуляторов.
Человечество также остро нуждается в роботах, которые могут без помощи оператора тушить пожары, самостоятельно передвигаться по заранее неизвестной, реальной пересеченной местности, выполнять спасательные операции во время стихийных бедствий, аварий атомных электростанций, в борьбе с терроризмом. Кроме того, по мере развития и совершенствования робототехнических устройств возникла необходимость в мобильных роботах, предназначенных для удовлетворения каждодневных потребностей людей: роботах-сиделках, роботах-нянечках, роботах-домработницах, роботах - всевозможных детских и взрослых игрушках и т.д. [6]. И уже сейчас в современном производстве и промышленности востребованы специалисты обладающие знаниями в этой области.
Однако сегодня даже у специалистов в области робототехники возникают примерно те же трудности, что и 30 лет назад у разработчиков ЭВМ. Из-за отсутствия общих стандартов и платформ создателям роботов приходится начинать разработку каждого нового творения практически с нуля. Поэтому очень важно чтобы студенты получали как можно больше практического опыта.
1.4 Обзор аналогов
Для правильного выбора аналогов используем ряд признаков классифицирующих данный макет.
По среде эксплуатации робот является наземным. Тип движителя - колесный, т.е. по степени подвижности робот мобильный. К функциональным назначениям относятся манипуляционные и транспортные функции. Макет имеет манипулятор, по конструктивному исполнению он подвижный и имеет 3 звена. Управление роботом может производиться как в автоматическом, так и в ручном режиме.
Изучив существующие модели роботов с механической рукой, не было найдено аналогов с колесной базой. Поэтому рассмотрены аналоги с гусеничной базой и неподвижные роботы с механической рукой.
1.4.1 Робот T300 с механической рукой и гусеничным шасси
Данная модель имеет гусеничное шасси Т300, на котором расположена механическая рука, имеющая 7 степеней свободы и управляемая 4 сервоприводами MG996R имеющими крутящий момент 15 кг/см. Управление осуществляется с помощью двойной платы, команды подаются с пульта дистанционного управления. Для захвата предметов используется металлический манипулятор CL-4. Цена находится в пределах от 11000 до 12000 рублей. Внешний вид робота представлен на рисунке 1.
Рисунок 1 – Робот Т300 с механической рукой
1.4.2 Smart Tracked Robot Car Chassis Caterpillar with Mechanical Arm
Робот на гусеничном шасси с механической рукой, имеющей 4 степени свободы. Для передвижения используются сервоприводы LDX-335MG с крутящим моментом 17 кг/см, рука управляется сервоприводами LDX-2015 с крутящим моментом 15 кг/см. Данная модель имеет возможность подключения Bluetooth устройства, ультразвукового модуля и инфракрасного сенсора. Контролер системы с открытым исходным кодом. Цена данной модели от 11000 до 13000 рублей. Внешний вид представлен на рисунке 2.
Рисунок 2 – Smart Tracked Robot Car Chassis Caterpillar
1.4.3 Mobile manipulator Robot car with Mechanical arm for remote control
Робот имеет гусеничную базу T200 из пластика и алюминия. Механическая рука имеет 6 степеней свободы и управляется четырьмя сервоприводами MG996R и двумя MG90S, крутящий момент которых 15 кг/см. Управление производится двойной платой, команды поступают с пульта дистанционного управления. Цена варьируется от 9000 до 11000 рублей. Внешний вид показан на рисунке 3.
Рисунок 3 – Mobile manipulator Robot car with Mechanical arm
1.4.4 DIY Acrylic robot arm
В отличие от предыдущих аналогов данная модель является стационарной. Робот является промышленным прототипом и использует механическую руку с четырьмя степенями свободы. Оснащен платой Arduino uno отвечающей за управление. Цена данной механической руки от 2000 до 3000 рублей. Внешний вид представлен на рисунке 4.
Рисунок 4 – DIY Acrylic robot arm
В качестве аналогов рассматривались полностью собранные роботы состоящие из корпуса и аппаратно-программной части. Такое сравнение можно проводить так как, разработанный модуль достаточно поместить в корпус и разместить все элементы, чтобы он стал полноценным роботом.
Изучив вышеуказанные модели роботов, сделаны следующие выводы.
Спроектированный в данной работе модуль имеет свои уникальные черты и отличается от уже имеющихся моделей. Одна из главных особенностей это возможность дистанционной загрузки программы в электронную плату. В то время как во всех вышерассмотренных роботах загрузка осуществляется с помощью подключения электронной платы к компьютеру с помощью USB кабеля либо иных проводных методов. Другой отличительной особенностью является наличие датчиков, что делает модуль универсальным. Различные виды сервоприводов позволят собрать робота имеющего как функции транспортировки так и сбора различных данных об окружающей робота среде. Не менее важная особенность это наличие микрокомпьютера на борту робота, что расширяет его функционал и позволяет проводить сложные расчеты и обработку данных без использования компьютера, а так же наличие графического интерфейса для вывода данных.
2 Программные и технические средства разработки аппаратно-программного модуля
2.1 Взаимодействие микрокомпьютера с компьютером
В качестве микрокомпьютера выбран Raspberry Pi версия B+. Выбранный микрокомпьютер имеет размер 85х56 мм. Версия B+ имеет процессор с частотой 700 МГц и оперативную память объемом 512 МБ. На плате расположены 40 GPIO пинов. Для подключения устройств имеются 4 USB порта и 1 ethernet порт. Вывод изображения может осуществляться через hdmi кабель. Все файлы, включая операционную систему, записываются на карте памяти SD, MMC, microSD или SDIO [31].