Проектирование цифровых систем передачи

Автор работы: Пользователь скрыл имя, 07 Декабря 2014 в 12:36, дипломная работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ И ПОСТАНОВКА ЗАДАЧИ 3
1.1 ВВЕДЕНИЕ 3
1.2 ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА ДИПЛОМНЫЙ ПРОЕКТ 4
2 РАЗРАБОТКА МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА 8
2.1 ПРЕДЛОЖЕНИЕ И ОБОСНОВАНИЕ ПОДХОДА К СОЗДАНИЮ СЕНСОРА 8
2.2 РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА 9
2.3 ОБОСНОВАНИЕ ВЫБОРА ЭЛЕМЕНТНОЙ БАЗЫ 12
2.3.1 Акселерометр 12
2.3.2 Магниторезистивный сенсор 14
2.3.3 АЦП 17
2.3.4 ЦАП 21
2.3.5 Температурный датчик 23
2.3.6 Операционный усилитель 25
2.3.7 Мультиплексор 29
2.3.8 Схема сброса 31
2.3.9 ПЛИС 32
2.3.10 Микроконтроллер 34
2.4 ПРИНЦИП РАБОТЫ МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА 37
2.5 РАСЧЕТ ПОТРЕБЛЯЕМОЙ МОЩНОСТИ 39
3 РАЗРАБОТКА ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА НАЧАЛЬНОЙ КАЛИБРОВКИ МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА 41
3.1 ОБОСНОВАНИЕ НЕОБХОДИМОСТИ НАЧАЛЬНОЙ КАЛИБРОВКИ МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА 41
3.2 РАЗРАБОТКА АЛГОРИТМА ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА НАЧАЛЬНОЙ КАЛИБРОВКИ ИНЕРЦИОННОГО СЕНСОРА 41
3.3 РЕЗУЛЬТАТЫ ИСПЫТАНИЯ РАЗРАБОТАННОГО ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА НАЧАЛЬНОЙ КАЛИБРОВКИ ИНЕРЦИОННОГО СЕНСОРА 55
4 РАЗРАБОТКА АЛГОРИТМОВ УПРАВЛЕНИЯ ИНЕРЦИАЛЬНЫМИ ПРИЛОЖЕНИЯМИ 58
4.1 РАЗРАБОТКА АЛГОРИТМА ОПРОСА МОДУЛЯ ИНЕРЦИОННОГО СЕНСОРА И ФИЛЬТРАЦИИ ПОЛУЧЕННЫХ ПОКАЗАНИЙ 58
4.2 РАЗРАБОТКА АЛГОРИТМА РАСПОЗНАВАНИЯ БАЗОВЫХ ДВИЖЕНИЙ FLIP 61
4.3 РАЗРАБОТКА АЛГОРИТМА ВЫДЕЛЕНИЯ БАЗОВЫХ ДВИЖЕНИЙ PUSH 65
5 РАЗРАБОТКА МЕТОДИКИ НАПИСАНИЯ ИНЕРЦИАЛЬНЫХ ПРИЛОЖЕНИЙ 68
5.1 СПЕЦИФИКА РАЗРАБОТКИ ПРИЛОЖЕНИЙ ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ PALM OS 4.0 68
5.2 РАЗРАБОТКА РАЗДЕЛЯЕМОГО РЕСУРСА БАЗЫ ДАННЫХ ИНЕРЦИОННОГО СЕНСОРА 72
5.3 РАЗРАБОТКА ДЕМОНСТРАЦИОННОГО ИНЕРЦИАЛЬНОГО ПРИЛОЖЕНИЯ 74
6 ПЛАНИРОВАНИЕ И ОЦЕНКА ЗАТРАТ СОЗДАНИЯ ПРОГРАММНОГО ПРОДУКТА 81
6.1 СМОЛЯНАЯ ЯМА ПРОГРАММИРОВАНИЯ 81
6.2 СЕТЕВОЕ ПЛАНИРОВАНИЕ 82
6.3 СОЗДАНИЕ СТРУКТУРНОЙ ТАБЛИЦЫ РАБОТ 83
6.4 РАСЧЕТ ЗАТРАТ НА СОЗДАНИЕ ПРОГРАММНОГО ПРОДУКТА 87
6.4.1 Расчет затрат на непосредственную разработку программного комплекса 87
6.4.2 Расчет затрат на изготовление опытного образца программного продукта 89
6.4.3 Расчет затрат на технологию 90
6.4.4 Затраты на ЭВМ 90
6.4.5 Общие затраты на создание программного продукта 91
7 ПРОИЗВОДСТВЕННАЯ И ЭКОЛОГИЧЕСКАЯ БЕЗОПАСНОСТЬ 93
7.1 ВВЕДЕНИЕ В ПРОИЗВОДСТВЕННУЮ И ЭКОЛОГИЧЕСКУЮ БЕЗОПАСНОСТЬ 93
7.2 ОБЕСПЕЧЕНИЕ ПРОИЗВОДСТВЕННОЙ БЕЗОПАСНОСТИ ПРИ РАЗРАБОТКЕ, ПРОИЗВОДСТВЕ И ЭКСПЛУАТАЦИИ МИКРОПРОЦЕССОРНЫХ УСТРОЙСТВ 94
7.2.1 Микроклимат лаборатории 94
7.2.2 Требования к уровням шума и вибрации 96
7.2.3 Электробезопасность 97
7.2.4 Требование к защите от статического электричества и излучений при работе за компьютером. 98
7.2.5 Требования к освещению на рабочем месте 100
7.2.6 Воздействие вредных веществ при пайке 102
7.2.7 Психофизические факторы 103
7.2.8 Эргономика рабочего места 103
7.3 РАСЧЕТ ИСКУССТВЕННОГО ОСВЕЩЕНИЯ НА РАБОЧЕМ МЕСТЕ 104
7.4 ОХРАНА ОКРУЖАЮЩЕЙ СРЕДЫ 106
8 ЗАКЛЮЧЕНИЕ 108
9 СПИСОК ЛИТЕРАТУРЫ 109

Файлы: 1 файл

Диплом.doc

— 2.35 Мб (Скачать файл)

Управление игрой Cosmicon

Действие

Значение

Наклоны в разные стороны

Передвижение главного героя по карте

Push Forward

Прыжок вперёд

Push Backward

Прыжок назад

Push Left

Прыжок влево

Push Right

Прыжок вправо

Push Down

Подкат

Push Up

Бросок гранаты

Flip Left

Предыдущий предмет из инвентаря

Flip Right

Следующий предмет из инвентаря

Flip Forward

Осмотреться

Flip Backward

Использовать предмет

Flip Clockwise

Следующее оружие

Flip Anticlockwise

Предыдущее оружие

Hard Key 1

Выстрел

Hard Key 2

Toggle Control

Hard Key 3

Пауза


 

На основе данного проектирования было написано инерциальное приложение Cosmicon для Palm OS 4.0. Объём исходного кода на языке C++ составил 64кБайт, объём бинарного prc-файла составил 192кБайт. Несколько скриншотов игры представлены на рис. 5.5.

 

Рис. 5.5 Скриншоты игры Cosmicon

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Планирование и оценка затрат создания программного продукта

    1. Смоляная яма программирования

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

Такой смоляной ямой в последние десятилетия было программирование больших систем: в ней сгинул не один большой и сильный зверь. По большей части это происходило в области систем, где мало кому удалось реализовать спецификации, уложиться в график и бюджет. Большие и малые, массивные и жилистые – одна за другой команды программистов увязли в смоле. Казалось ничто в отдельности не вызывает трудностей – одну лапу всегда можно вытащить. Но накопление действующих одновременно и взаимно влияющих факторов всё более и более замедляет движение. Вызывает удивление неприятность возникшей проблемы, и распознать её сущность нелегко. Выделим несколько факторов могущих привести к гибели проекта:

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

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

    1. Сетевое планирование

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

Перечень элементарных работ комплекса.

Перечень работ, на которые опираются элементарные работы.

Время выполнения каждой работы.

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

 

    1. Создание структурной таблицы работ

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

    • Создание Map Engine модуля, отвечающего за вывод карты на экран.
    • Создание User Event модуля, отвечающего за распознавание действий пользователя.
    • Создание Hero модуля, отвечающего за вывод на экран и анимацию движений главного героя игры.
    • Создание Shoot модуля, отвечающего за анимацию полёта пуль и гранат.
    • Создание Explode модуля отвечающего за анимацию взрывов.
    • Создание Items модуля отвечающего за предметы находящиеся на карте
    • Создание Inventory модуля, отвечающего за оперирование предметами, находящимися в экипировке главного героя.
    • Создание Static Enemy модуля, отвечающего за статически расположенных героев игры.
    • Создание Dynamic Enemy модуля, отвечающего за динамически передвигающихся по карте героев игры.
    • Создание Quest модуля, отвечающего за контроль прохождения игры.
    • Создание Info модуля, отвечающего за вывод подсказок и общей информации на экран, а также визуализацию показателей главного героя (таких как здоровье, выбранный предмет из инвентаря и количество патронов).
    • Сборка и отладка модулей.
    • Подготовка документации.

Каждая из этих частей является элементарной частицей комплекса работ по созданию инерциального приложения Cosmicon. Обозначим их буквой “A” с добавлением номера работы в соответствии со списком приведенным выше.

Таблица 6.1

Структурная таблица работ

Работа

Опорные работы

Время

1

A1

-

7

2

A2

-

3

3

A3

A1,A2

12

4

A4

A3

5

5

A5

A3

3

6

A6

A1,A2

6

7

A7

A6

2

8

A8

A1,А2

10

9

A9

А8

14

10

A10

A9

5

11

A11

A9

3

12

A12

A4,A5,A7,A10,A11

12

13

A13

12

5


Пронумеруем работы по рангам:

 

 

 

 

 

 

 

Таблица 6.2

Проанализированная структурная таблица работ

Работа

Опорные работы

Время

Ранг

Новый номер

1

A1

-

7

1

B1

2

A2

-

3

1

B2

3

A3

A1,A2

12

2

B3

4

A4

A3

5

3

B6

5

A5

A3

3

3

B7

6

A6

A1,A2

6

2

B4

7

A7

A6

2

3

B8

8

A8

A1,А2

10

2

B5

9

A9

А8

14

3

B9

10

A10

A9

5

4

B10

11

A11

A9

3

4

B11

12

A12

A4,A5,A7,A10,A11

12

5

B12

13

A13

A12

5

6

B13


 

Упорядочена структурная таблица работ будет иметь вид:

Таблица 6.3

Упорядоченная структурная таблица работ

Работа

Опорные работы

Время

1

B1

-

7

2

B2

-

3

3

B3

B1,B2

12

4

B4

B1,B2

6

5

B5

B1,B2

10

6

B6

B3

5

7

B7

B3

3

8

B8

B4

2

9

B9

B5

14

10

B10

B9

5

11

B11

B9

3

12

B12

B6,B7,B8,B10,B11

12

13

B13

B12

5


 

Сетевой график составленный по упорядоченной структурной таблице изображен на рис. 6.1

Рис. 6.1 Сетевой график

 

На сетевом графике жирной линией выделен критический путь Т=53 дням.

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

Информация о работе Проектирование цифровых систем передачи