Исследование и разработка алгоритмов и программ управления антропоморфным роботом

Анализ существующих учебно-технических решений по управлению антропоморфными роботами. Разработка архитектуры лабораторного комплекса. Разработка структуры данных и знаний для лабораторного комплекса. Программные модули примеров лабораторных работ.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 23.12.2019
Размер файла 7,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

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

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

Сам танец состоит из нескольких типов движений.

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

Второй тип - одновременное гребущее движение руками и ходьба вперёд, а затем сразу же ходьба назад с вытянутыми вперёд руками, движение повторяется.

Третий тип - движение вперёд, руки на поясе.

Четвёртый тип - аккуратное вскидывание раскинутых рук чуть ниже уровня груди.

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

Финальный аккорд - одновременное сгибание обоих ног в коленях и раскидывание рук в стороны.

Блок-схема проекта программы танца «Яблочко» представлена на рисунке 4.9.

Рисунок 4.9 Блок-схема программы танца

5. Разработка и описание программных модулей

5.1 Описание программных модулей графического интерфейса

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

У всех форм задано значение poScreenCenter свойству Position, чтобы формы отображались посередине основного дисплея независимо от их количества и разрешения. Также свойству FormStyle присвоено значение fsStayOnTop, чтобы каждая форма открывалась поверх других окон для удобства взаимодействия с интерфейсом.

Первая форма представлена на рисунке 5.1.

Рисунок 5.1 Первая форма интерфейса

Данная форма является заставкой, поэтому её стиль выбран как splash-форма. Это означает, что она появляется и исчезает через определённый промежуток времени.

На форме расположен компонент Image1, позволяющий выставить фоновое изображение, а также компонент StaticText1, с помощью которого задано приветствие.

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

TForm1 = class(TForm)

Image1: TImage;

StaticText1: TStaticText;

В свойствах формы свойству BorderStyle присвоено значение bsNone, что повышает реалистичность заставки.

Вторая форма представлена на рисунке 5.2.

Рисунок 5.2 Вторая форма интерфейса

Фоновое изображение установлено с помощью компонента Image1. Заголовок для удобства представлен в виде трёх компонентов Label.

Также форма содержит три кнопки BitBtn. BitBtn1 называется «Содержание», располагается посередине слева, чтобы не закрывать фоновое изображение, и имеет иконку запуска. Она инициализирует скрытие формы меню и активацию формы содержания. Код кнопки представлен ниже.

procedure TForm2.BitBtn1Click(Sender: TObject);

begin

Form2.Hide;

Form4.Show;

end;

Также у этой кнопки активно свойство Hint и содержит подсказку «Переход к комплексу».

Снизу слева находится кнопка BitBtn2, имеющая иконку вопроса, а также скрывающая форму меню и запускающая форму информации о программе. Код кнопки представлен ниже.

procedure TForm2.BitBtn2Click(Sender: TObject);

begin

Form2.Hide;

Form3.Show;

end;

Также у этой кнопки активно свойство Hint и содержит подсказку «Информация о программе».

Снизу справа расположена кнопка выхода BitBtn3 со значком двери, при нажатии на которую происходит выход из программы. У этой кнопки активно свойство Hint и содержит подсказку «Выход из программы». Действие задано в свойстве Kind значением bkClose и в свойстве ModalResult значением mrClose.

Также в модуле меню прописана работа модуля заставки. Её код представлен ниже.

procedure TForm2.FormCreate(Sender: TObject);

begin

Form1.Show;

Form1.Repaint;

Sleep(3000);

Form1.Hide;

Form1.Free;

end;

Третья форма представлена на рисунке 5.3.

Рисунок 5.3 Третья форма интерфейса

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

Фоновое изображение установлено с помощью компонента Image1. Текст на форме представлен в виде трёх компонентов Label.

Снизу справа расположена кнопка выхода BitBtn1 со значком закрытия, при нажатии на которую закрывается данная форма и активируется форма меню. У этой кнопки активно свойство Hint и содержит подсказку «Вернуться в меню». Код кнопки представлен ниже.

procedure TForm3.BitBtn1Click(Sender: TObject);

begin

Form3.Close;

Form2.Show;

end;

Четвёртая форма представлена на рисунке 5.4.

Рисунок 5.4 Четвёртая форма интерфейса

Данная форма непосредственно позволяет перейти к просмотру текстов лабораторных работ комплекса.

Фоновое изображение установлено с помощью компонента Image1.

Снизу справа расположена кнопка выхода BitBtn1 со значком закрытия, при нажатии на которую закрывается данная форма и активируется форма меню. У этой кнопки активно свойство Hint и содержит подсказку «Вернуться в меню». Код кнопки представлен ниже.

procedure TForm4.BitBtn1Click(Sender: TObject);

begin

Form4.Close;

Form2.Show; end;

Переход к текстам лабораторных работ осуществляется с помощью пяти кнопок BitBtn. Как видно на рисунке 5.4, названия работ не подписаны и узнать, какую именно нужно запускать, трудно. Для получения этой информации используется система автоматически меняющихся фоновых изображений. Фон, изображённый на этом рисунке, является основным и появляется, когда курсор мыши не находится ни на одной из этих кнопок. При наведении курсора на какую-либо из кнопок фоновое изображение меняется на заданное в программе, которое лучше всего отображает суть работы, и уже на нём с помощью графического редактора Adobe Photoshop нанесены названия. При убирании курсора мыши от кнопки появляется основное фоновое изображение. Для изменения фонового рисунка задаются в коде при создании формы файлы картинок. Код события создания формы представлен ниже.

procedure TForm4.FormCreate(Sender: TObject);

begin

T1:= TBitmap.Create;

T1.LoadFromFile('Resources\Images\Fon_labs.bmp');

T2:= TBitmap.Create;

T2.LoadFromFile('Resources\Images\fon_first.bmp');

T3:= TBitmap.Create;

T3.LoadFromFile('Resources\Images\fon_second.bmp');

T4:= TBitmap.Create;

T4.LoadFromFile('Resources\Images\fon_third.bmp');

T5:= TBitmap.Create;

T5.LoadFromFile('Resources\Images\fon_four.bmp');

T6:= TBitmap.Create;

T6.LoadFromFile('Resources\Images\fon_five.bmp');

end;

Код интерактивного взаимодействия с кнопкой открытия первой лабораторной представлен ниже.

procedure TForm4.BitBtn2MouseEnter(Sender: TObject);

begin

Image1.Picture.Bitmap.Assign(T2);

end;

procedure TForm4.BitBtn2MouseLeave(Sender: TObject);

begin

Image1.Picture.Bitmap.Assign(T1);

end;

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

Запуск файла лабораторной работы мог осуществляться через компонент OleContainer, но этот способ содержит множество ограничений, таких как необходимость наличия вызываемой программы, в данном случае MS Word, и закрытия процесса этой программы после выполнения. Поэтому был использован более простой и удобный способ с использованием bash-скриптов. Этот способ заключается в том, что при нажатии на кнопку запуска лабораторной работы запускается заданный bash-скрипт, содержащий код, позволяющий открыть текстовый файл лабораторной работы в любом текстовом редакторе, установленном на целевом компьютере, что является несомненным преимуществом. Код кнопки запуска первой лабораторной работы и bash-скрипта представлен ниже.

Код кнопки.

procedure TForm4.BitBtn2Click(Sender: TObject);

begin

Z:= TProcess.Create(nil);

Z.CommandLine:= 'Resources\Exec_labs\first.bat';

Z.Execute; Z.Free; end;

Код скрипта.

@echo off

start Resources\Labs\First_lab.docx

exit

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

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

Также эти кнопки содержат подсказки. Текст первой кнопки «Знакомство с NAO и его возможностями». Текст второй кнопки «Знакомство с Choregraphe и Monitor». Текст третьей кнопки «Изучение и работа модулями Choregraphe». Текст четвёртой кнопки «Изучение и работа с таймлайном и режимом анимации». Текст пятой кнопки «Создание проекта танца «Яблочко»».

5.2 Описание программных модулей примеров лабораторных работ

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

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

В третьей лабораторной работе разработана программа самодиагностики, состоящая из большого количества модулей.

Модуль WakeUp состоит из подмодулей Set Language, в свойствах которого задан русский язык (во всех других таких модулях также задаётся русский язык), и WakeUp, который заставляет робота активировать приводы.

Модуль Hello состоит из модулей Say, в котором задано слово «Привет» и Hello, который включает анимацию приветствия. Они представлены на рисунке 5.5.

Рисунок 5.5 Модули WakeUp и Hello

Модуль Name состоит из подмодуля Say, в котором прописана фраза «Меня зовут», Get Name, передающего имя робота, и Say Text, который произносит это имя.

Модуль Battery состоит из подмодуля Battery, проверяющего заряд батареи, Say, в котором прописана фраза «Заряд батареи в норме», и Say (1), в котором прописана фраза «Батарея скоро разрядится».

Они представлены на рисунке 5.6.

Рисунок 5.6 Модули Name и Battery

Модуль Connection состоит из подмодуля Choregraphe Connection, проверяющего соединение с программой, Say, в котором прописана фраза «Я подключён к Хореграфе и», Say (1), в котором прописана фраза «Я не подключён к Хореграфе и», Internet Connection, проверяющего подключение к интернету, Say (2), в котором прописана фраза «подключён к интернету.» и Say (3), в котором прописана фраза «не подключён к интернету.».

Модуль Hardware состоит из подмодуля Has Hardware и Has Hardware (1), в которых задаётся проверка наличия рук и ног, Say, в котором прописана фраза «Я чувствую руки и», Say (1), в котором прописана фраза «чувствую ноги.», Say (2), в котором прописана фраза «Я не чувствую руки и» и Say (3), в котором прописана фраза «не чувствую ног.».

Они представлены на рисунке 5.7.

Рисунок 5.7 Модули Connection и Hardware

Модуль Collision состоит из подмодуля Stand Up, заставляющего робота встать, Hands и Hands (1), в которых задаётся движение кистей рук, Move To и Move To (1), в которых задаётся движение ног, IsInCollision, в котором проверяется наличие препятствий, Say, в котором прописана фраза «Все приводы работают.» и Say (1), в котором прописана фраза «Что-то не так, я не могу двигаться.».

Модуль Fall состоит из подмодуля FallDetector, проверяющего положение тела в пространстве, Say, в котором прописана фраза «Я не падаю.» и Say (1), в котором прописана фраза «Я падаю.».

Они представлены на рисунке 5.8.

Рисунок 5.8 Модули Collision и Fall

Модуль Temperature состоит из подмодуля Get Temperature, снимающего значение температуры с датчика, Say, в котором прописана фраза «Температура моей головы», и Say Text.

Модуль Darkness состоит из подмодуля InDarkness, проверяющего освещение, Say, в котором прописана фраза «Я в темноте.» и Say (1), в котором прописана фраза «Я на свету.».

Они представлены на рисунке 5.9.

Рисунок 5.9 Модули Temperature и Darkness

В четвёртой лабораторной работе разработана программа музыкальной анимации.

Модуль Play Sound состоит из подмодуля Get Attached File, позволяющего прикрепить файл к проекту, и Play Sound File, позволяющего воспроизвести звуковой файл.

Модуль Diagram состоит из подмодуля Set Language и Say, в котором прописана фраза «Самое время отдохнуть!».

Они представлены на рисунке 5.10.

Рисунок 5.10 Модули Play Sound и Diagram

Модуль анимации представлен на рисунке 5.11.

Рисунок 5.11 Модуль Timeline

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

Модуль Say на схеме содержит текст «Ээх, аж самому сыграть захотелось!».

В пятой лабораторной работе разработана программа танца «Яблочко».

Модуль Say Phrase состоит из подмодуля Set Language и Say, в котором прописана фраза «Эх, станцуем!».

На схеме в модуле Say прописана фраза «Отлично потанцевал! Но я устал, пора отдыхать.»

В модуле Wait задан временной промежуток 15 секунд.

В модуле Blink Rainbow содержится восемь модулей Blink, в каждом из которых прописан свой цвет свечения глаз и один модуль Counter, перезапускающий процесс мигания определённое количество раз.

Главный модуль движений содержит последовательность движений рук на временной шкале, а последовательность движений ног располагается в различных ключевых кадрах на слое поведения dance, представленная в виде точно рассчитанного использования стандартных модулей движения Move Toward и Move To.

Модуль таймлайна представлен на рисунке 5.12.

Рисунок 5.12 Модуль танцевальных движений

6. Экспериментальное тестирование и отладка программных модулей

6.1 Описание проводимого тестирования

Под экспериментальным тестированием здесь понимается проверка программных модулей на ошибки в процессе разработки и исправлением их с описанием способа исправления. Количество этих ошибок при разработке было небольшим. Ошибки допускались при создании интерфейса открытия лабораторных работ и практических примеров для трёх последних работ.

6.2 Тестирование и отладка интерфейса лабораторного комплекса

Описание ошибки: форма заставки после перемещения её из автосоздаваемых форм в список доступных форм полностью исчезала из списка.

Решение: чтобы форма использовалась проектом как доступная, нужно было прописать её в модуле проекта в виде строки Form1:= Form1.Create(nil).

Описание ошибки: при использовании компонента OleContainer возникала ошибка отсутствия доступа к приложению MS Word. Также, после исправления этой ошибки, процесс приложения MS Word оставался в памяти и не выгружался, что приводило к невозможности запуска нового процесса приложения и заполнению оперативной памяти.

Решение: вместо OleContainer было применено более простое и удобное решение использовать bash-скрипты, что позволило операционной системе самой выбирать приложение для открытия текстового документа и управлять процессом, не вызывая его зависания в оперативной памяти.

Описание ошибки: форма заставки запускалась и оставалась в оперативной памяти после её закрытия.

Решение: для полного закрытия формы необходимо выгрузить её из памяти, для этого используется процедура Form1.Free.

Описание ошибки: после сборки приложения интерфейса при направлении курсора мыши на какую-либо из кнопок формы содержания, запускающих bash-скрипты, приложение выдавало ошибку и завершало своё выполнение.

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

Описание ошибки: при показе картинок, которые появляются при наведении курсора мыши на кнопку, картинки не отображаются и фон формы становится белого цвета.

Решение: класс TBitmap поддерживает только картинки формата.bmp, поэтому формат всех картинок изменён на.bmp.

Описание ошибки: при открытии форм содержания и помощи форма меню должна скрываться, но она остаётся открытой.

Решение: на кнопки перехода с формы меню поставить процедуру её скрытия, а на кнопке закрытия форм помощи и содержания поставить процедуру отображения формы меню.

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

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

Описание ошибки: при запуске приложения шрифт на кнопках открытия лабораторных работ отображался некорректно на другом компьютере. Это приведено на рисунке 6.1.

Решение: шрифт, использованный для этих кнопок, был нестандартным, поэтому он был заменён на стандартный.

Рисунок 6.1 Ошибка шрифта

6.3 Тестирование и отладка практических примеров лабораторного комплекса

В третьем практическом примере была разработана программа самодиагностики, в итоговой версии которой и на данный момент присутствуют ошибки. Список ошибок, выданный средой разработки при выполнении программы представлен на рисунке 6.2.

Рисунок 6.2 Ошибки выполнения программы

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

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

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

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

Среда разработки помечает модули с ошибками выполнения красным цветом. Это показано на рисунке 6.3.

Рисунок 6.3 Изображение ошибочных модулей на схеме

В четвёртом практическом примере была разработана программа музыкальной анимации, в итоговой версии которой и на данный момент присутствуют ошибки. Список ошибок, выданный средой разработки при выполнении программы представлен на рисунке 6.4.

Рисунок 6.4 Список ошибок при выполнении программы музыкальной анимации

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

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

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

Рисунок 6.5 Лог ошибок примера пятой лабораторной работы

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

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

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

7. Оценка качества разрабатываемого продукта

7.1 Оценка качества интерфейса комплекса лабораторных работ

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

Таблица 7.1

Описание оценок программного средства

Значение оценки

Описание

0 - 0,49

Свойство в программном средстве присутствует, но его качество неприемлемо

0,5 - 0,9

Свойство в программном средстве присутствует, обладает приемлемым качеством

0,91 - 1

Свойство в программном средстве присутствует, обладает высоким качеством

Характеристика показателей качества программного средства представлена в таблице 7.2.

Таблица 7.2

Характеристика показателей программного средства

Показатели

качества

Сущность

показателя

Экспертная оценка

Экспериментальная оценка

1

2

3

4

Надежность

Свойство программы непрерывно сохранять работоспособность

0,19

0,98

Эффективность

Характеризует эффективность использования ПС

0,06

0,99

Время ответа

Характеризует то, насколько быстро программа отвечает на воздействие

0,13

0,4

Рациональность

Свойство ПС, характеризующее затрачиваемые им ресурсы ПК

0,15

0,96

Точность

Характеризует степень точности, с которой программа выполняет расчеты

0,01

0,5

Срок службы

Характеризует время эксплуатации программного средства

0,05

0,7

1

2

3

4

Универсальность

Свойство программы работать не только в той системе, в которой она должна работать, но и в любой другой

0,07

0,3

Показатель назначения

Характеризует способность программы выполнять назначенные функции

0,18

0,9

Удобство усвоения

Характеризует степень усваиваемой программы пользователем

0,23

0,98

Время введения в эксплуатацию

Характеризует время, через которое программа будет введена в эксплуатацию

0,06

0,9

Определим качество разработанного программного средства.

Оно определяется по формуле:

(7.1)

где - качество ПС;

- общее число показателей;

- экспертная оценка показателя с индексом i;

- экспериментальная оценка показателя с индексом i.

На основе данных таблицы 7.2 построим гистограмму распределения оценок по интервалам. Гистограмма представлена на рисунке 7.1.

Рисунок 7.1 Гистограмма распределения оценок по интервалам

7.2 Оценка качества программы диагностики

Характеристика показателей качества программного средства представлена в таблице 7.3.

Таблица 7.3

Характеристика показателей программного средства

Показатели

качества

Сущность

показателя

Экспертная оценка

Экспериментальная оценка

1

2

3

4

Надежность

Свойство программы непрерывно сохранять работоспособность

0,13

0,87

Эффективность

Характеризует эффективность использования ПС

0,1

0,92

Время ответа

Характеризует то, насколько быстро программа отвечает на воздействие

0,11

0,95

Рациональность

Свойство ПС, характеризующее затрачиваемые им ресурсы ПК

0,14

0,91

Точность

Характеризует степень точности, с которой программа выполняет расчеты

0,06

0,7

Срок службы

Характеризует время эксплуатации программного средства

0,08

0,81

1

2

3

4

Универсальность

Свойство программы работать не только в той системе, в которой она должна работать, но и в любой другой

0,09

0,92

Показатель назначения

Характеризует способность программы выполнять назначенные функции

0,15

0,94

Удобство усвоения

Характеризует степень усваиваемой программы пользователем

0,16

0,5

Время введения в эксплуатацию

Характеризует время, через которое программа будет введена в эксплуатацию

0,11

0,68

Определим качество разработанного программного средства по формуле 7.1.

На основе данных таблицы 7.3 построим гистограмму распределения оценок по интервалам. Гистограмма представлена на рисунке 7.2.

Рисунок 7.2 Гистограмма распределения оценок по интервалам

7.3 Оценка качества программы музыкальной анимации

Характеристика показателей качества программного средства представлена в таблице 7.4.

Таблица 7.4

Характеристика показателей программного средства

Показатели

качества

Сущность

показателя

Экспертная оценка

Экспериментальная оценка

Надежность

Свойство программы непрерывно сохранять работоспособность

0,14

0,95

Эффективность

Характеризует эффективность использования ПС

0,12

0,45

Время ответа

Характеризует то, насколько быстро программа отвечает на воздействие

0,13

0,64

Рациональность

Свойство ПС, характеризующее затрачиваемые им ресурсы ПК

0,04

0,87

Точность

Характеризует степень точности, с которой программа выполняет расчеты

0,08

0,8

Срок службы

Характеризует время эксплуатации программного средства

0,07

0,79

Универсальность

Свойство программы работать не только в той системе, в которой она должна работать, но и в любой другой

0,05

0,98

Показатель назначения

Характеризует способность программы выполнять назначенные функции

0,12

0,97

Удобство усвоения

Характеризует степень усваиваемой программы пользователем

0,15

0,9

Время введения в эксплуатацию

Характеризует время, через которое программа будет введена в эксплуатацию

0,1

0,49

Определим качество разработанного программного средства по формуле 7.1.

На основе данных таблицы 7.4 построим гистограмму распределения оценок по интервалам. Гистограмма представлена на рисунке 7.3.

Рисунок 7.3 Гистограмма распределения оценок по интервалам

7.4 Оценка качества программы танца

Характеристика показателей качества программного средства представлена в таблице 7.5.

Таблица 7.5

Характеристика показателей программного средства

Показатели

качества

Сущность

показателя

Экспертная оценка

Экспериментальная оценка

1

2

3

4

Надежность

Свойство программы непрерывно сохранять работоспособность

0,06

0,66

Эффективность

Характеризует эффективность использования ПС

0,1

0,8

Время ответа

Характеризует то, насколько быстро программа отвечает на воздействие

0,17

0,97

1

2

3

4

Рациональность

Свойство ПС, характеризующее затрачиваемые им ресурсы ПК

0,08

0,95

Точность

Характеризует степень точности, с которой программа выполняет расчеты

0,1

0,45

Срок службы

Характеризует время эксплуатации программного средства

0,09

0,99

Универсальность

Свойство программы работать не только в той системе, в которой она должна работать, но и в любой другой

0,08

0,93

Показатель назначения

Характеризует способность программы выполнять назначенные функции

0,09

0,97

Удобство усвоения

Характеризует степень усваиваемой программы пользователем

0,13

0,72

Время введения в эксплуатацию

Характеризует время, через которое программа будет введена в эксплуатацию

0,1

0,92

Определим качество разработанного программного средства по формуле 7.1.

На основе данных таблицы 7.5 построим гистограмму распределения оценок по интервалам. Гистограмма представлена на рисунке 7.4.

Рисунок 7.4 Гистограмма распределения оценок по интервалам

Заключение

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

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

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

Также были разработаны алгоритмы и программные модули интерфейса, программы самодиагностики, музыкальной анимации и проекта танца «Яблочко». При разработке алгоритмов были построены их блок-схемы.

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

Все практические примеры разработаны в среде разработки Choregraphe на диаграммном языке программирования. Интерфейс разработан в открытой среде разработки Lazarus на языке программирования Delphi. Скрипты для открытия текстовых файлов лабораторных работ, написанных в текстовом редакторе MS Word, написаны с помощью интерпретатора bash.

Список использованных источников

1. Основы робототехники [Электронный ресурс] // ПОРТАЛ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА: сайт. Режим доступа: http://neuronus.com/robo/47-teoriya/635-osnovy-robototekhniki.html.

2. Проектные направления НПО «Андроидная техника» [Электронный ресурс] // НПО АНДРОИДНАЯ ТЕХНИКА: сайт. Режим доступа: http://npo-at.com/projects/.

3. Как развивалась антропоморфная робототехника [Электронный ресурс] // inVega: сайт. Режим доступа: https://robo-hunter.com/news/kak-razvivalas-antropomorfnaya-robototehnika.

4. Сборка и программирование Lego Mindstorm [Электронный ресурс] // LEGO: сайт. Режим доступа: https://www.lego.com/ru-ru/mindstorms/build-a-robot.

5. DARwIn-OP [Электронный ресурс] // Wikipedia: сайт. Режим доступа: https://en.wikipedia.org/wiki/DARwIn-OP.

6. Робототехника в ВУЗах и проектная работа на базе ROBOTIS-OP [Электронный ресурс] // Занимательная робототехника: сайт. Режим доступа: http://edurobots.ru/2016/05/robotis-op-robototexnika-v-vuzax-i-proektnaya-rabota/.

7. Unveiling of NAO Evolution [Электронный ресурс] // SoftBank Robotics: сайт. Режим доступа: https://www.ald.softbankrobotics.com/en/press/press-releases/unveiling-of-nao-evolution-a-stronger-robot-and-a-more-comprehensive-operating.

8. Science, technology, engineering, and mathematics [Электронный ресурс] // Wikipedia: сайт. Режим доступа: https://en.wikipedia.org/wiki/Science,_technology,_engineering,_and_mathematics.

9. NAO H25 Evolution V5 [Электронный ресурс] // РОБОТОШКОЛА: сайт. Режим доступа: http://www.robotoschool.ru/catalog/androidnye-roboty/1344/.

10. NAO Evolution educator pack [Электронный ресурс] // RobotLAB: сайт. Режим доступа: http://www.robotlab.com/store/nao-evolution-educator-pack.

11. Ask NAO autism solution for kids [Электронный ресурс] // RobotLAB: сайт. Режим доступа: http://www.robotlab.com/store/ask-nao-autism-solution-for-kids.

12. Ask NAO: new way of teaching [Электронный ресурс] // SoftBank Robotics: сайт. Режим доступа: https://asknao.aldebaran.com/material.

13. Choregraphe downloads [Электронный ресурс] // SoftBank Robotics: сайт. Режим доступа: https://developer.softbankrobotics.com/us-en/downloads/nao-v5-v4.

14. Choregraphe suite installation [Электронный ресурс] // Aldebaran documentation: сайт. Режим доступа: http://doc.aldebaran.com/2-1/getting_started/installing.html#desktop-installation.

15. Справочник Delphi: Uses [Электронный ресурс] // Основы Delphi: сайт. Режим доступа: http://www.delphibasics.ru/Uses.php.

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.