Разработка концептуальной объектной модели системы



Министерство науки и высшего образования Российской Федерации

ФГБОУ ВО Рыбинский государственный авиационный технический

университет имени П.А. Соловьева

 

Факультет радиоэлектроники и информатики

Кафедра «Вычислительные системы»

 

 

КУРСОВАЯ РАБОТА

 

 

по дисциплине
«Разработка информационно-управляющих систем»

 

 

на тему

Создание спектрограммы речевого сигнала в реальном времени

 

Студент гр. ПИМ-19                                                 Паламарь А.И.

Студент гр. ИВМ-19                                                      Медведев Е.Ю.

 

Преподаватель                                                             Ломанов А.Н.

 

 

Рыбинск 2020

 

Содержание

Введение. 2

1 Анализ технического задания. 3

2 Разработка математической модели системы.. 5

3 Разработка концептуальной объектной модели системы.. 7

3.1 Общий вид концептуальной модели программы.. 7

3.2 Детализированная концептуальная модель программы.. 8

4 Проектирование программы.. 9

4.1 Разработка интерфейса. 9

4.2 Кодирование программы.. 10

5 Разработка контрольного примера (тестирование) 12

6 Руководство пользователя. 15

Заключение. 16

 

 

Введение

 

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

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

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

Раздел “Разработка концептуальной объектной модели системы” содержит объектную модель и модель взаимосвязи компонентов программы.

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

Раздел “Разработка контрольного примера” содержит тестовые примеры готовой программы, подтверждающие ее работоспособность.

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

 

 

Анализ технического задания

 

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

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

PyAudio обеспечивает привязки Python для PortAudio, кросс-платформенной библиотеки аудио ввода-вывода. С помощью PyAudio можно легко использовать Python для воспроизведения и записи звука на различных платформах. Чтобы использовать PyAudio, сначала создаем PyAudio, используя pyaudio.PyAudio(), который устанавливает систему portaudio.

 

 

 

Чтобы обеспечить работу в реальном времени, требуется обеспечить оптимальный размер аудио буфера, так как время его заполнения является самой длительной по времени процедурой (обусловлено максимальной частотой дискретизации). Так как максимальная частота дискретизации на стандартной звуковой карте составляет 44,1 кГц, то не трудно вычислить, что аудио буфер размером 2048 байт в режиме захвата PyAudio.paInt16 (один замер с АЦП равен двум байтам) на частоте дискретизации 44,1 кГц заполнится за 23,1 мс, что вполне удовлетворяет рамкам задержки режима реального времени.

 

Разработка математической модели системы

 

Среда разработки была выбрана – PyCharm.

PyCharm — интегрированная среда разработки для языка программирования Python. Предоставляет средства для анализа кода, графический отладчик, инструмент для запуска юнит-тестов и поддерживает веб-разработку на Django. PyCharm разработана компанией JetBrains на основе IntelliJ IDEA.

PyCharm — это кросс-платформенная среда разработки, которая совместима с Windows, MacOS, Linux. PyCharm Community Edition (бесплатная версия) находится под лицензией Apache License, а PyCharm Professional Edition(платная версия) является проприетарным ПО.

Возможности данной среды:

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

o Простая и мощная навигация в коде.

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

o Быстрый просмотр документации для любого элемента прямо в окне редактора, просмотр внешеней документации через браузер, поддержка docstring – генерация, подсветка, автодополнение и многое другое.

o Большое количество инспекций кода.

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

o Полная поддержка свежих версий Django фреймворка.

o Поддержка Google App Engine.

o Поддержка IronPython, Jython, Cython, PyPy wxPython, PyQt, PyGTK и др.

o Поддержка Flask фреймворка и языков Mako и Jinja2.

o Редактор Javascript, Coffescript, HTML/CSS, SASS, LESS, HAML.

o Интеграция с системами контроля версий (VCS).

o UML диаграммы классов, диаграммы моделей Django и Google App Engine.

o Интерактивные консоли для Python, Django, SSH, отладчика и баз данных.

o Полнофункциональный графический отладчик (Debugger).

o Поддержка схем наиболее популярных IDE/редакторов. таких как Netbeans, Eclipse, Emacs, эмуляция VIM редактора.

o Поддерживаемые языки: Python (Versions: 2.x, 3.x), Jython, Cython, IronPython, PyPy, Javascript, CoffeScript, HTML/CSS, Django/Jinja2 templates, Gql, LESS/SASS/SCSS/HAML, Mako, Puppet, RegExp, Rest, SQL, XML, YAML.

o PyCharm имеет несколько цветовых схем, а также настраиваемую подсветку синтаксиса кода.

o Интеграция с баг/issue-треккерами, такими как JIRA, Youtrack, Lighthouse, Pivotal Tracker, GitHub, Redmine, Trac…

o Огромная, постоянно пополняемая коллекция плагинов.

o Кросс-платформенность (Windows, Mac OS X, Linux).

 

Разработка концептуальной объектной модели системы


Дата добавления: 2023-01-08; просмотров: 21; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!