--PAGE_BREAK--
продолжение
--PAGE_BREAK--double [] res – передискретизированный вейвлет.
2.5.4. Используемые программы В подпрограмме не используется других подпрограмм.
2.5.5. Схема подпрограммы «Wavelet.Resample» Схема подпрограммы «Wavelet.Resample» приведена на рис. 2.2.
Схема программы Wavelet.Resample
Рис. 2.2
2.6. Описание подпрограммы «Result.FormRow»
2.6.1. Вводная часть Подпрограмма Result.FormRow служит для получения одной строки результата вейвлет-анализа, соответсвующей определенному масштабу вейвлета. Подпрограмма производит перемножение сигнала и вейвлета. Текст программы приведен в приложении 1.3.
2.6.2. Функциональное назначение Подпрограмма Result.FormRow предназначена для реализации алгоритма перемножения сигнала и вейвлета.
2.6.3. Описание информации Входные данные для данной подпрограммы представлены:
int [] x – массив, содержащий значения анализируемого сигнала;
double [] y – массив, содержащий значения смаштабированного вейвлета;
int row – номер строки, для который производится расчёт.
Выходные данные для данной подпрограммы представлены:
double [, ] data – матрица, содержащая значения результата вейвлет-анализа.
2.6.4. Используемые программы В подпрограмме не используется других подпрограмм.
2.6.5. Схема подпрограммы «Result.FormRow» Схема подпрограммы «Result.FormRow» приведена на рис. 2.3.
2.7. Описание подпрограммы «Analyzer.Analyze»
2.7.1. Вводная часть Подпрограмма Analyzer.Analyze служит для осуществления вейвлет-анализа. Подпрограмма производит последовательное масштабирование вейвлета и его перемножение с сигналом. Текст программы приведен в приложении 1.4.
2.7.2. Функциональное назначение Подпрограмма Analyzer.Analyze предназначена для реализации алгоритма вейвлет-анализа.
2.7.3. Описание информации Входные данные для данной подпрограммы представлены:
int [] data – массив, содержащий значения анализируемого сигнала;
int [] wavelet – массив, содержащий значения исходного вейвлета.
Выходные данные для данной подпрограммы представлены:
double [, ] result – массив, содержащий значения исходного вейвлета.
Схема программы Result.FormRow
Рис. 2.3
2.7.4. Используемые программы
В подпрограмме используется подпрограммы Wavelet.Resample и Result.FormRow, описанные в п.п. 2.5, 2.6.
2.7.5. Схема подпрограммы «Analyzer.Analyze» Схема подпрограммы «Analyzer.Analyze» приведена на рис. 2.4.
Схема программы Analyzer.Analyze
Рис. 2.4
2.8. Описание контрольного примера
2.8.1. Назначение
Основной целью работы программы служит вейвлет-анализ дискретных сигналов. Результатом работы является матрица вещественных чисел. Так как анализируемый сигнал и результирующие матрицы имеют достаточно большие размеры, для наглядности контрольный пример будет содержать не набор чисел, а их изображения, полученные в подсистеме визуализации данных.
2.8.2. Исходные данные
Исходными данными служат файлы «.dat», содержащие данные исходного сигнала или вейвлета. Описание формата этих файлов представлено в п.2.1.2.
2.8.3. Контрольный пример
В качестве исходного сигнала была выбрана дискретизированная синусоида. После загрузки в программу анализируемый сигнал выглядит следующим образом (рис. 2.5).
Анализируемый сигнал
Рис.2.5
Для анализа входного сигнала был выбран вейвлет – аналог так называемой «мексиканской шляпы» /1/. В нашем случае к «мексиканской шляпе» были добавлены две краевые составляющие. Полученный вейвлет представлен на рис. 2.6.
Вейвлет
Рис. 2.6
После расчёта и визуализации результат вейвлет-анализа исходного сигнала выглядит следующим образом (рис.2.7). Как видно на результирующей картине ярко выделены минимумы и максимумы исходного сигнала.
Результат вейвлет анализа
Рис. 2.7
2.8.4. Тестирование программного обеспечения подсистемы вейвлет-нализа
Для испытания программного обеспечения подсистемы вейвлет-анализа на вход были поданы файлы, содержащие данные анализируемого сигнала и вейвлета. Испытания проводились согласно руководству программиста, приведенному в приложении 2, и руководству оператора, приведенному в приложении 3.
Тестирование показало, что разработанное программное обеспечение способно производить вейвлет-анализ дискретных сигналов.
3. ОРГАНИЗАЦИОННО-ЭКОНОМИЧЕСКАЯ ЧАСТЬ 3.1. Обоснование необходимости разработки системы многомасштабного анализа дискретных сигналов Система многомасштабного анализа дискретных сигналов реализует вейвлет-анализ и структурную индексацию дискретных сигналов. Анализ позволяет выделить структурные особенности сигналов и отобразить их в наглядном для восприятия человека виде. Посредством многомасштабного анализа удается значительно понизить количество шумов и искажений в исходном сигнале. Также появляется возможность для существенного сжатия исходных данных.
Разрабатываемая система носит исследовательский характер и предназначена для поиска и отладки наиболее эффективных алгоритмов многомасштабного анализа. Реализация системы позволит в значительной степени облегчить труд программиста-исследователя посредством автоматизации процесса многомасштабного анализа дискретных сигналов.
Реализация системы МАДС позволит интегрировать в едином интерфейсе все этапы обработки входных сигналов:
1) вейвлет-преобразование исходных сигналов. Сохранение результатов преобразования для дальнейшего использования;
2) структурная индексация исходных сигналов. Сохранение результатов индексации для дальнейшего использования;
3) конвертация данных структурной индексации для получения исходного сигнала;
4) визуализация данных вейвлет-анализа и структурной индексации для наглядного отображения их результатов.
3.2. Расчет затрат на разработку системы многомасштабного анализа дискретных сигналов
Для определения величины расходов на создание подсистемы, используем прямой метод калькуляции /22/.
Расчет сметы затрат осуществляется по следующим статьям:
1) расходы на материалы;
2) расходы на оплату труда исполнителей;
3) отчисления на социальные налоги;
4) расходы на содержание и амортизацию вычислительной техники;
5) накладные расходы;
6) прочие расходы.
К статье «Расходы на материалы» относятся покупные изделия, необходимые для выполнения работы, перечисленные в табл. 3.1.
Таблица 3.1
Расходы на основные и вспомогательные материалы
Наименование материала
Количество
Стоимость, р.
Диск CD-RW
4 шт.
120
Бумага писчая 80 г.
250 листов
80
Тонер для принтера
1 шт.
200
Прочие канцелярские товары
25
Итого
425
Оклад инженера-программиста в период разработки составлял 5000 р. в месяц. Продолжительность разработки 3 месяца.
ЗП = ЗПМ*ПМ , (3.1)
где ЗП – оклад за период разработки;
ЗПМ – оклад инженера-программиста;
ПМ – период разработки.
ЗП = 5000 * 3 = 15000 руб.
Работникам начисляется премия. Процент премиальных составил 15% в месяц.
ЗП,% = ЗП*1.15 , (3.2)
где ЗП,% – зарплата с учетом премии;
ЗП – оклад за период разработки.
ЗП,% = 15000 * 1.15 = 17250 руб.
Плановые накопления в фонд резерва отпусков рассчитывается в размере 10% от тарифной платы:
ЗПД = ЗП * 0.10 , (3.3)
где ЗПД – плановые накопления в фонд резерва отпусков;
ЗП – оклад за период разработки.
ЗПД = 17250 * 0.10 = 1725 руб.
В расходы на оплату труда необходимо включить уральский коэффициент (15%). Районный коэффициент рассчитывается от оклада вместе с премиальными и дополнительной заработной платой.
КУР = 17250 * 0.15 = 2587.5 руб.
Следовательно, расходы на оплату труда с учетом зонального коэффициента составят:
ЗПОСН = ЗП,% + ЗПД + КУР , (3.4)
где ЗПОСН – расходы на оплату труда;
ЗП,% – зарплата с учетом премии;
ЗПД – плановые накопления в фонд резерва отпусков;
КУР – районный коэффициент.
ЗПОСН = 17250 + 1725 + 2587.5 = 21562.5 руб.
Статья «Расходы на социальные налоги» включает в себя отчисления в пенсионный фонд (20%), на медицинское (3.1%) и социальное страхование (2.9%), отчисления в фонд страхования от несчастных случаев (0.2%), что составляет 26.2% /23/. Отчисления производятся от общих расходов на оплату труда и сумма отчислений составляет:
СОТЧ = ЗПОСН * 0.262 , (3.5)
где СОТЧ – расходы на социальные налоги;
ЗПОСН – расходы на оплату труда.
СОТЧ = 21562.5 * 0.262 = 5649.37 руб.
Статья «Расходы на содержание и амортизацию вычислительной техники» включает расходы, связанные с эксплуатацией вычислительной техники. Стоимость одного машинного часа рассчитывается по формуле:
АЧ = СИСП / (ЧМ * КЧ), (3.6)
где АЧ – аренда за час использования;
СИСП – общая стоимость использования ЭВМ (рассчитывается по формуле (3.7));
ЧМ – число месяцев в году;
КЧ – количество рабочих часов в месяце.
СИСП = АКОМП + ЗПОБСЛ + СЗЧ + СЭЛ + АПО, (3.7)
где АКОМП – амортизация компьютера за год эксплуатации;
ЗПОБСЛ – расходы на оплату труда обслуживающего персонала за год эксплуатации.
ЗПОБСЛ = 2000 руб/мес.
СЗЧ – стоимость запчастей для компьютера за год эксплуатации.
СЗЧ = 3000 руб/год.
СЭЛ – стоимость израсходованной электроэнергии за год эксплуатации.
СЭЛ = 3000 руб/год.
АПО – годовая амортизация программного обеспечения.
АКОМП = СКОМП / СПИ, (3.8)
где СКОМП – стоимость компьютера;
СПИ – срок полезного использования (в годах).
АКОМП = 30000 / 5 = 6000 руб.
АПО = СТПО / СПИ, (3.9)
где СТПО – стоимость программного обеспечения;
СПИ – срок полезного использования (в годах).
АПО = 7000 / 5 = 1400 руб.
СИСП = 6000 + 2000*12 + 3000 + 3000 + 1400 = 37400 руб.
АЧ = 37400 / (12 * 176) = 17.708 руб
ЭВМ использовалась на этапах проектирования (52 час), программирования (65 часов), отладки (490 часов) и документирования (247 часов), т.е. всего 854 часов. Следовательно, сумма амортизационных отчислений составит:
САР = Эч * Ач , (3.10)
где САР – сумма амортизационных отчислений;
Эч – количество часов проектирования;
АЧ – аренда за час использования.
САР = 854 * 17.708 = 15122.63 руб.
Статья «Прочие расходы» содержит расходы, неучтенные в предыдущих статьях (до 5 % от расходов на оплату труда):
ПР = ЗПОСН * 0.05 , (3.11)
где ПР – прочие расходы;
ЗПОСН – расходы на оплату труда.
ПР = 21562.5 * 0.05 = 1078.125 руб.
Статья «Накладные расходы» включает в себя расходы по управлению (заработная плата управления, расходы на все виды командировок управленческого аппарата), содержание пожарной и сторожевой охраны, содержание и текущий ремонт зданий, сооружений, инвентаря; содержание персонала, не относящегося к аппарату управления; расходы по изобретательству и рационализации; по подготовке кадров; расходы на содержание ВЦ; канцелярские, почтово-телеграфные расходы и др. общехозяйственные расходы; непроизводственные расходы. Накладные расходы составляют 130% от расходов на оплату труда, таким образом, получаем:
НР = ЗПОСН * 1.3 , (3.12)
где НР – накладные расходы;
ЗПОСН – расходы на оплату труда.
НР = 21562.5 * 1.3 = 28031.25 руб.
Сумма затрат на разработку подсистемы в целом составила 72000 руб. Табл. 3.2 отражает затраты по статьям и структуру этих затрат в общей сумме.
Таблица 3.2
Смета затрат на разработку подсистемы
Округлим полученную сумму до тысяч для учета непредвиденных затрат. Получим, что сумма затрат на разработку системы составит 72 000.0 руб.
Структура затрат на разработку ПО приведена на рис. 3.1.
Структура затрат на разработку ПО
\s
Рис.3.1
4. БЕЗОПАСНОСТЬ И ЭКОЛОГИЧНОСТЬ ПРОЕКТА
В соответствии с ГОСТом /24/ охрана труда определяется как система законодательных актов, социально-экономических, организационных, технических, гигиенических и лечебно-профилактических мероприятий и средств, обеспечивающих безопасность, сохранение здоровья и работоспособности человека в процессе труда.
Задача охраны труда – свести к минимуму вероятность несчастного случая или заболевания работающего с одновременным обеспечением комфортных условий при максимальной производительности труда.
В процессе труда на человека кратковременно или длительно воздействуют разнообразные неблагоприятные факторы (пыль, газы, пары, шум и др., которые могут привести к заболеванию и потере трудоспособности).
Компьютерная техника, на первый взгляд, не таит в себе опасности для окружающих. Существуют скрытые факторы, которые могут привести к профессиональным заболеваниям и производственным травмам: большая нагрузка на зрительную систему, воздействие излучений, шумовое воздействие при работе с печатающими устройствами.
Руководству предприятий, имеющих в своем арсенале средства вычислительной техники, приходится заботиться о соблюдении мер противопожарной и электробезопасности, следить за состоянием микроклиматических условий труда, так как в случае возникновения опасной ситуации дорогостоящее оборудование может выйти из строя или сократится срок его службы. Особое внимание следует уделять персоналу, который непосредственно связан с работой на компьютерной технике. Как правило, программисты проводят за дисплеем большую часть рабочего времени и они попадают под влияние скрытых производственных факторов. Задача руководства предприятия и инженерного состава – обеспечить сохранность вычислительной техники и обслуживающего персонала, путем проведения мероприятий по безопасности труда.
4.1. Анализ опасных и вредных факторов, возникающих при ксплуатации компьютера
Правильная организация труда пользователя среди других вопросов предполагает создание безопасных и безвредных условий труда. Безопасность труда определяется как состояние условий труда, при котором отсутствует производственная опасность /24/. Последняя определяется как возможность воздействия на человека опасных и вредных факторов. Опасным считается фактор, воздействие которого приводит к несчастному случаю или травме работника, а вредным – фактор, приводящий к заболеванию. Различия между обеими группами довольно условны.
Пользователи компьютерной техники сталкиваются с воздействием таких производственных факторов, как повышенный уровень шума, повышенная температура внешней среды, отсутствие и недостаток естественного света, недостаточная освещенность, электрический ток и др. Существует также ряд психологических факторов: перенапряжение зрительных и слуховых анализаторов, монотонность труда, эмоциональные перегрузки.
Для обеспечения безопасности пользователя необходимо проводить анализ условий труда, знать существующие стандарты, разрабатывать и проводить специальные мероприятия.
продолжение
--PAGE_BREAK--
продолжение
--PAGE_BREAK--С = 1000 – удельная теплопроводность воздуха (Дж/кгК);
Y = 1.2 – плотность воздуха (мг/см).
Температура уходящего воздуха определяется по формуле:
tуход = tр.м. + ( Н — 2 )t , (4.1)
где t = 1-5 градусов – превышениеt на 1м высоты помещения;
tр.м.= 25 градусов – температура на рабочем месте;
Н = 4.2 м – высота помещения;
tприход= 18 градусов.
tуход = 25 + ( 4.2 — 2 ) 2 = 29.4
Qизбыт = Qизб.1 + Qизб.2 + Qизб.3 , (4.2)
где Qизб. – избыток тепла от электрооборудования и освещения.
Qизб.1 = Е *р , (4.3)
где Е – коэффициент потерь электроэнергии на топлоотвод ( Е=0.55 для освещения);
р – мощность, р = 40 Вт * 15 = 600 Вт.
Qизб.1 = 0.55 * 600=330 Вт
Qизб.2 – теплопоступление от солнечной радиации;
Qизб.2 =m*S*k*Qc , (4.4)
где m – число окон, примем m = 4;
S – площадь окна, S = 2.3 * 2 = 4.6м2;
k – коэффициент, учитывающий остекление. Для двойного остекления
k = 0.6;
Qc = 127 Вт/м – теплопоступление от окон;
Qизб.2 = 4.6 * 4 * 0.6 * 127 = 1402 Вт
Qизб.3– тепловыделения людей;
Qизб.3 = n *q , (4.5)
где q= 80 Вт/чел.;
n – число людей, например,n = 15.
Qизб.3 = 15 * 80 = 1200 Вт
Qизбыт = 330 +1402 + 1200 = 2932 Вт
Из уравнения теплового баланса следует:
Vвент м3
Оптимальным вариантом является кондиционирование воздуха, т.е. автоматическое поддержание его состояния в помещении в соответствии с определенными требованиями (заданная температура, влажность, подвижность воздуха) независимо от изменения состояния наружного воздуха и условий в самом помещении.
4.6. Требования к освещению рабочих мест, расчет освещения
К современному освещению помещений, где работают с вычислительной техникой, предъявляют высокие требования как гигиенического, так и технического характера. Правильно спроектированное и выполненное освещение обеспечивает высокий уровень работоспособности, оказывает положительное психологическое воздействие, способствует повышению производительности труда. Условия деятельности пользователя в системе «человек-машина» связаны с явным преобладанием зрительной информации – до 90% общего объема.
В помещениях с компьютерной техникой применяется совмещенная система освещения. К таким системам предъявляют следующие требования:
1) соответствие уровня освещенности рабочих мест характеру выполняемых зрительных работ;
2) достаточно равномерное распределение яркости на рабочих поверхностях и в окружающем пространстве;
3) отсутствие резких теней, прямой и отраженной блеклости.
4) постоянство освещенности во времени;
5) оптимальная направленность излучаемого осветительными приборами светового потока;
6) долговечность, экономичность, электро- и пожаробезопасность, эстетичность, удобство и простота эксплуатации.
Для искусственного освещения помещений с вычислительной техникой следует использовать люминесцентные лампы, у которых высокая световая отдача (до 75 лм/Вт и более), продолжительный срок службы (до 10.000 ч), малая яркость светящейся поверхности, близкий к естественному спектр излучения, что обеспечивает хорошую цветопередачу. Наиболее приемлемыми являются люминесцентные лампы белого света и тепло-белого света мощностью 40, 80 Вт /30/.
Работа программиста относится к работам высокой точности (III разряд зрительных работ). Рекомендуемая освещенность для работы с экраном дисплея составляет 200 лк, а при работе с экраном в сочетании с работой над документами – 400 лк. Рекомендуемая яркость в поле зрения должна лежать в пределах 1:5-1:10.
Освещенность рабочего места пользователя на исследуемом предприятии является совмещенной (искусственное + естественное), расположение рабочих мест исключает попадание прямых солнечных лучей на экран дисплея и в глаза. В качестве источника искусственного освещения используют ДРЛ (12 штук).
Расчет освещенности рабочего места сводится к выбору системы освещения, определению необходимого числа светильников, их типа и размещения. Процесс работы программиста в таких условиях, когда естественное освещение недостаточно или отсутствует. Исходя из этого, рассчитаем параметры искусственного освещения.
Искусственное освещение выполняется посредством электрических источников света двух видов: ламп накаливания и люминесцентных ламп. Будем использовать люминесцентные лампы, которые по сравнению с лампами накаливания имеют существенные преимущества:
1) по спектральному составу света они близки к дневному, естественному освещению;
2) обладают более высоким КПД (в 1.5-2раза выше, чем КПД ламп накаливания);
3) обладают повышенной светоотдачей (в 3-4 раза выше, чем у ламп накаливания);
4) более длительный срок службы.
Расчет освещения производится для комнаты площадью 36 м2, ширина которой 4.9 м, высота – 4.2 м. Воспользуемся методом светового потока.
Для определения количества светильников определим световой поток, падающий на поверхность по формуле:
, (4.6)
где F – рассчитываемый световой поток, Лм;
Е – нормированная минимальная освещенность, Лк (определяется по таблице). Работу программиста, в соответствии с этой таблицей, можно отнести к разряду точных работ, следовательно, минимальная освещенность будет Е = 300 Лк при газоразрядных лампах;
S – площадь освещаемого помещения ( в нашем случае S = 36 м2 );
Z – отношение средней освещенности к минимальной (обычно принимается равным 1.1-1.2, пусть Z = 1.1);
К – коэффициент запаса, учитывающий уменьшение светового потока лампы в результате загрязнения светильников в процессе эксплуатации (его значение определяется по таблице коэффициентов запаса для различных помещений и в нашем случае К = 1.5);
n – коэффициент использования, (выражается отношением светового потока, падающего на расчетную поверхность, к суммарному потоку всех ламп и исчисляется в долях единицы; зависит от характеристик светильника, размеров помещения, окраски стен и потолка, характеризуемых коэффициентами отражения от стен (Рс) и потолка (Рп)), значение коэффициентов Рс и Рп определим по таблице зависимостей коэффициентов отражения от характера поверхности: Рс=30%, Рп=50%. Значение n определим по таблице коэффициентов использования различных светильников. Для этого вычислим индекс помещения по формуле:
, (4.7)
где S – площадь помещения, S = 36 м2;
h – расчетная высота подвеса, h = 3.39 м;
A – ширина помещения, А = 4.9 м;
В – длина помещения, В = 7.35 м.
Подставив значения получим:
Зная индекс помещения I, Рс иРп, по таблице находим n = 0.28
Подставим все значения в формулу для определения светового потока F:
Лм
Для освещения выбираем люминесцентные лампы типа ЛБ40-1, световой поток которых F = 4320 Лк.
Рассчитаем необходимое количество ламп по формуле:
, (4.8)
где N – определяемое число ламп;
F – световой поток, F = 63642,857 Лм;
Fл — световой поток лампы, Fл = 4320 Лм.
шт.
При выборе осветительных приборов используем светильники типа ОД. Каждый светильник комплектуется двумя лампами. Размещаются светильники двумя рядами, по четыре в каждом ряду.
4.7. Пожарная безопасность
В современных ЭВМ очень высокая плотность размещения элементов электронных схем. В непосредственной близости друг от друга располагаются соединительные провода, коммуникационные кабели. При протекании по ним электрического тока выделяется значительное количество тепла, что может привести к повышению температуры отдельных узлов до 100°C. При этом возможно плавление изоляции проводов, их оголение, и как следствие, короткое замыкание, которое сопровождается искрением и ведет к перегрузкам элементов электронных схем, которые, перегреваясь, сгорают с искрением, поэтому следует большое внимание оказывать пожарной безопасности.
Пожарная безопасность – состояние объекта, при котором с установленной вероятностью исключается возможность возникновения и развития пожара и воздействия на людей опасных факторов пожара, а также обеспечивается защита материальных ценностей /31/.
Особое внимание к пожарной безопасности является обоснованным, так как в случае пожара будет нанесен значительный материальный ущерб (даже если в помещении находится один компьютер) и возможна угроза жизни и здоровью людей.
Источниками пожара при работе программиста с компьютером могут быть ЭВМ, электропроводка, действующие системы отопления, вентиляции и кондиционирования воздуха, бытовые приборы.
Помещение, где установлена вычислительная техника, относятся к категории “Д” – помещения, где находятся твердые горючие и трудногорючие вещества и материалы, так как:
1) относительная влажность воздуха не превышает 75%;
2) нет токопроводящей пыли;
3) температура не превышает длительное время 30 °С;
4) отсутствует возможность одновременного прикосновения человека с имеющим соединение с землей металлическими конструкциями;
5) отсутствие возможности прикоснуться к токоведущим частям оборудования;
6) нет токопроводящих полов.
В соответствии с требованиями пожарной безопасности у входной двери должен находиться углекислотный огнетушитель типа ОУ-5.
В помещении может быть установлена пожарная сигнализация — тепловые извещатели с плавкими предохранителями. Это необходимо при большой концентрации средств вычислительной техники.
Для ликвидации пожара в начальной стадии в коридоре ВЦ размещается пожарный кран. В помещении, где установлена вычислительная техника, недопустимо применять воду и пенные огнетушители, так как в этом случае существует опасность повреждения или полного выхода из строя ЭВМ и другого оборудования. Для тушения пожаров на ВЦ наиболее эффективно использовать порошковые огнетушители типа ОП-5-01 из расчета один огнетушитель на 40-50 кв. м площади, но не менее двух в помещении. Устройства пожарной автоматики предназначены для обнаружения, оповещения и ликвидации пожаров.
В данном разделе дипломной работы был проведен анализ вредных и опасных производственных факторов, действующих на рабочем месте инженера-программиста. Среди них были выделены: постоянное напряжение глаз, влияние электростатических и электромагнитных полей, длительное неизменное положение тела, шум. Был проведен анализ и указан комплекс мер по пожаробезопасности и электробезопасности. Проведен расчет эргономических требований к рабочему месту инженера-программиста. Созданные условия должны обеспечивать комфортную работу. На основании изученной литературы по данной проблеме, были указаны оптимальные размеры рабочего стола и кресла, параметры рабочей поверхности, а также сформулированы предложения по улучшению параметров рабочего места. Соблюдение условий, определяющих оптимальную организацию рабочего места инженера-программиста, позволит сохранить хорошую работоспособность в течение всего рабочего дня, повысит как в количественном, так и в качественном отношениях производительность труда программиста, что в свою очередь будет способствовать быстрейшей разработке и отладке программного продукта.
ЗАКЛЮЧЕНИЕ В дипломной работе был разработан и реализован математический метод, позволяющий за приемлемое время автоматически производить вейвлет-преобразование дискреного сигнала. В результате проделанной работы были решены поставленные перед разработчиком задачи:
1) спроектированы базовые модели данных, которые могут быть использованы для дальнейшей обработки и анализа;
2) реализован алгоритм вейвлет-анализа входного сигнала;
3) разработано программное средство реализующее вейвлет-анализ;
4) подсистема вейвлет-анализа интегрирована в единую систему многомасштабного анализа дискретных сигналов;
5) подсистема предоставляет базовый набор функций для анализа входных сигналов, результаты которого могут применяться в других подсистемах.
Проведен анализ, выбор и реализация оптимальных алгоритмов вейвлет-анализа, позволяющих за приемлимое время достичь нужного результата.
Создано программное обеспечение, выполняющее многомасштабный анализ дискретных сигналов.
Посредством МАДС удается обнаружить структурные особенности сигналов, выявить и уменьшить шумы.
Созданную систему МАДС следует рассматривать как исследовательскую систему, предназначенную для выявления эмпирических закономерностей в предметной области и дальнейшую разработку в направлении большей автоматизации процесса многомасштабного анализа.
СПИСОК ЛИТЕРАТУРЫ 1. Добеши И. Десять лекций по вейвлетам. -Ижевск: НИЦ «Регулярная и хаотическая динамика», 2001.
2. Дремин И.М. Вейвлеты и их использование. –М: Наука – производству, 2000.
3. Астафьева Н.М. Вейвлет-анализ: основы теории и примеры применения. –М: Фундаментальная и прикладная математика, 1998.
4. www.systat.com/products/AutoSignal/
AutoSignal – Spectral and time domain signal analysis and processing software.
// Проверено 06.06.2006.
5. education.softline.ru/product.asp?catalog_name=SoftLine&category_name=&product_id=Software-13545&view=tech_info_ru&cookie%5Ftest=1
AutoSignal – пакет для проведения автоматизированного анализа сигналов.
// Проверено 06.06.2006.
6. www.mathworks.com/products/wavelet/
Wavelet Toolbox 3.0.4. // Проверено 06.06.2006.
7. matlab.exponenta.ru/wavelet/index.php
Wavelet ToolBox — обработка сигналов и изображений. //Проверено 06.06.2006.
8. Новиков И.Я. Основные конструкции всплесков. –М: Успехи математических наук, 1998.
продолжение
--PAGE_BREAK--9. Петухов А.П. Введение в теорию базисов всплесков. –М: Радио и связь, 1995.
10. Строустрап Б. Язык программирования С++. – М.: Мир, 1994. – 278 с.
11. Кнут Д. Искусство программирования для ЭВМ. — М.: Мир, 1976. – Т. 1-3.
12. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. — М.: Наука, 1979. – 720с.
13. Эйнджел Э. Интерактивная компьютерная графика. – М.: Вильямс, 2001. – 592 с.
14. ГОСТ 19.001-77 ЕСПД. Общие положения. -М.: Издательство стандартов, 1989.
15. ГОСТ 19.701-90 ЕСПД. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения. -М.: Издательство стандартов, 1991.
16. ГОСТ 19.105-78 ЕСПД. Общие требования к программным документам. -М.: Издательство стандартов, 1989.
17. ГОСТ 19.401-78 ЕСПД. Текст программы. Требования к содержанию и оформлению. -М.: Издательство стандартов, 1989.
18. ГОСТ 19.404-79 ЕСПД. Пояснительная записка. Требования к содержанию и оформлению. -М.: Издательство стандартов, 1989.
19. ГОСТ 19.504-79 ЕСПД. Руководство программиста. Требования к содержанию и оформлению. -М.: Издательство стандартов, 1989.
20. ГОСТ 19.505-79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению. -М.: Издательство стандартов, 1989.
21. Почерняев С.В., Килин И.В. Методические указания по дипломному проектированию. – Ижевск: Издательство ИжГТУ, 1994.
22. Технико-экономическое обоснование дипломных проектов. – Ижевск: Издательство ИжГТУ, 2001.
23. Налоговый кодекс РФ. – М.: ГроссМедиа Ферлаг, 2004.
24. ГОСТ 12.0.002-80 Система стандартов безопасности труда. Термины и определения – М.: Издательство стандартов, 1984.
25. ГОСТ 12.1.003-89 Система стандартов безопасности труда. Шум. Общие требования безопасности. -М.: Издательство стандартов, 1989.
26. СанПиН 2.2.2.542-96 Гигиенические требования к видеодисплейным терминалам, персональным электронным вычислительным машинам и организации работы. -М.: Издательство стандартов, 1976.
27. ГОСТ 12.1.029-80 Система стандартов безопасности труда. Средства и методы защиты от шума. Классификация. -М.: Издательство стандартов, 1980.
28. Руководства по проектированию производственных помещений и промышленных предприятий. -М.: Стройиздат, 1981.
29. СанПиН 2.2.4.548-96 Гигиенические требования к микроклимату производственных помещений. -М.: Издательство стандартов, 1976.
30. СНиП 23-05-95 Нормы проектирования естественного и искусственного освещения. -М.: Издательство стандартов, 1995.
31. ГОСТ 12.1.004-91 Система стандартов безопасности труда. Пожарная безопасность. Общие требования. -М.: Издательство стандартов, 1992.
ПРИЛОЖЕНИЕ 1
ТЕКСТ ПРОГРАММЫ
П. 1.1. ТЕКСТ МОДУЛЯ SIGNAL.CS
using System;
using System.Collections;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
using MultiScAn.Common.Attributes;
using MultiScAn.Common.Interfaces;
using MultiScAn.Common.Utils;
namespace MultiScAn.Common.Classes
{
public delegate void CommonHandler();
///
/// Summary description for Signal.
///
[Filter(«Текстовый файл данных (*.dat)|*.dat»)]
public class Signal: IData, ICleanable, IEnumerable
{
private int[] _data = new int[0];
private int _minValue = int.MaxValue;
private int _maxValue = int.MinValue;
private Bitmap _bitmap;
public Signal()
{
}
public void Rebuild(int size)
{
_data = new int[size];
_minValue = int.MaxValue;
_maxValue = int.MinValue;
_bitmap = null;
}
public void Load(string fileName)
{
int min = int.MaxValue, max = int.MinValue;
ArrayList list = new ArrayList();
using(StreamReader reader = File.OpenText(fileName))
{
string str = String.Empty;
while((str = reader.ReadLine()) != null)
{
str = str.Trim();
if (str != String.Empty)
{
string [] vals = str.Split(' ', '\t');
foreach(string val in vals)
{
int iVal = int.Parse(val);
DataUtil.Sort(iVal, ref min, ref max);
list.Add(iVal);
}
}
}
}
if (list.Count == 0) throw new NotSupportedException();
_data = (int[]) list.ToArray(typeof(int));
_minValue = min; _maxValue = max;
_bitmap = null;
if(OnLoad != null) OnLoad();
}
public event CommonHandler OnLoad;
public void Save(string fileName)
{
using(StreamWriter writer = File.CreateText(fileName))
{
foreach(int s in _data)
{
writer.WriteLine(s);
}
}
if (OnSave != null) OnSave();
}
public event CommonHandler OnSave;
public Bitmap Bitmap
{
get
{
if (_bitmap == null)
{
int min = _minValue > 0? 0: -_minValue;
int max = _maxValue
Graphics g = null;
_bitmap = new Bitmap(2 * _data.Length, min + max);
g = Graphics.FromImage(_bitmap);
g.FillRectangle(new SolidBrush(Color.White), g.ClipBounds);
for(int i = 1; i
{
g.DrawLine(new Pen(Color.Black),
new Point(2*i-1, max),
new Point(2*i-1, max — _data[i-1]));
}
}
return _bitmap;
}
}
public void Clean()
{
_data = new int[0];
_minValue = int.MaxValue;
_maxValue = int.MinValue;
}
public bool IsEmpty
{
get { return _data.Length == 0; }
}
public int this[int index]
{
get { return _data[index]; }
set { sorter = _data[index] = value; }
}
private int sorter
{
set
{
DataUtil.Sort(value, ref _minValue, ref _maxValue);
}
}
public IEnumerator GetEnumerator()
{
return _data.GetEnumerator();
}
public int Length
{
get { return _data.Length; }
}
public void CopyTo(int[] arr)
{
_data.CopyTo(arr, 0);
}
}
}
П. 1.2. ТЕКСТ МОДУЛЯ WAVELET.CS
using MultiScAn.Common.Classes;
namespace MultiScAn.WaveletAnalysis
{
///
/// Summary description for Wavelet.
///
public class Wavelet: Signal
{
public Wavelet()
{
}
public double[] Resample(int size)
{
double[] res = new double[size];
for (int i = 0, offs = 0; i
{
res[i] = 0.0;
for (int j = 0; j
{
res[i] += base[(offs + j)/size];
}
res[i] /= base.Length;
}
return res;
}
}
}
П. 1.3. ТЕКСТ МОДУЛЯ RESULT.CS
using System;
using System.Collections;
using System.Drawing;
using System.IO;
using MultiScAn.Common.Attributes;
using MultiScAn.Common.Classes;
using MultiScAn.Common.Interfaces;
using MultiScAn.Common.Utils;
namespace MultiScAn.WaveletAnalysis
{
///
/// Summary description for ResultUtil.
///
[Filter(«Результат вейвлет анализа (*.war)|*.war»)]
public class Result: IResult
{
double [,] _Data = new double[0, 0];
private Bitmap _bitmap;
private double _minValue = double.MaxValue;
private double _maxValue = double.MinValue;
private Spectrum _spectrum = new Spectrum();
public Result()
{
}
internal void Rebuild(int height, int width)
{
_bitmap = null;
_Data = new double[height, width];
_minValue = double.MaxValue;
_maxValue = double.MinValue;
}
public int Width
{
get { return _Data.GetLength(1); }
}
public int Height
{
get { return _Data.GetLength(0); }
}
public double this[int i, int j]
{
get { return _Data[i, j]; }
set { sorter = _Data[i, j] = value; }
}
public double MinValue
{
get { return _minValue; }
}
public double MaxValue
{
get { return _maxValue; }
}
public void Load(string fileName)
{
double min = double.MaxValue, max = double.MinValue;
double [,] data;
using(StreamReader reader = File.OpenText(fileName))
{
int width = int.Parse(__read(reader));
int height = int.Parse(__read(reader));
data = new double[width, height];
for(int i = 0; i
{
for(int j = 0; j
{
DataUtil.Sort(data[i, j] = double.Parse(__read(reader)), ref min, ref max);
}
}
}
_Data = data;
_minValue = min;
_maxValue = max;
_bitmap = null;
if(OnLoad != null) OnLoad();
}
private string __read(StreamReader reader)
{
string str = reader.ReadLine();
if (str == null) throw new NotSupportedException();
return str;
}
public event CommonHandler OnLoad;
public void Save(string fileName)
{
using(StreamWriter writer = File.CreateText(fileName))
{
int height = _Data.GetLength(0), width = _Data.GetLength(1);
writer.WriteLine(height);
writer.WriteLine(width);
for(int i = 0; i
{
for(int j = 0; j
{
writer.WriteLine(_Data[i, j]);
}
}
}
if (OnSave != null) OnSave();
}
public event CommonHandler OnSave;
продолжение
--PAGE_BREAK--