Построение автоматизированной системы анализа оптических рефлектограмм

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

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

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

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

Размещено на http://www.allbest.ru/

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к дипломному проекту (работе)

«Построение автоматизированной системы анализа оптических рефлектограмм»

Студент

Третьяков Александр Павлович

Содержание

  • 1. Специальная часть
    • 1.1 Введение и актуальность работы
    • 1.2 Постановка задачи
    • 1.3 Системы мониторинга ВОЛС
      • 1.3.1 Рефлектометрия волоконно-оптических линий связи
      • 1.3.2 Рефлектограммы ВОЛС. Их анализ и расшифровка
    • 1.4 Существующие на рынке решения
    • 1.5 Разработка технического задания
      • 1.5.1 Основания для разработки
      • 1.5.2 Назначение разработки
      • 1.5.3 Требования к программе
      • 1.5.4 Стадии и этапы разработки
    • 1.6 Разработка программного модуля
      • 1.6.1 Средства разработки и языки программирования
      • 1.6.2 Описание процесса разработки
    • 1.7 Результаты работы программных модулей
    • 1.8 Расчет надежности
      • 1.8.1 Описание методов расчета надежности программного обеспечения
  • 2. Конструкторско-технологическая часть
    • 2.1 Выбор модели технологического процесса разработки программного обеспечения
      • 2.1.1 Общие сведения
      • 2.1.2 Модели и методологии технологического процесса разработки программного обеспечения
      • 2.1.3 Выбор модели разработки
    • 2.2 Поэтапный процесс разработки программного обеспечения
      • 2.2.1 Методика работы
      • 2.2.2 Подробное описание процесса разработки
    • 2.3 Испытание и отладка программных модулей
      • 2.3.1 Инструменты отладки программного кода
      • 2.3.2 Методика отладки программных модулей
    • 2.4 Документирование и сопровождение программного обеспечения в соответствии с положениями ГОСТ Р ИСО/МЭК ТО 9294-93
      • 2.4.1 Общие сведения о ГОСТ Р ИСО/МЭК ТО 9294-93
      • 2.4.2 Стратегия документирования
      • 2.4.3 Планирование документирования
  • 3. Экология и охрана труда
    • 3.1 Общие положения и требования охраны труда к организации рабочих мест
    • 3.2 Вредные факторы, воздействующие на пользователя ЭВМ
    • 3.3 Определение оптимальной освещенности при работе с ЭВМ
    • 3.4 Обеспечение пожарной безопасности при работе оператора ЭВМ
  • Заключение

1. Специальная часть

1.1 Введение и актуальность работы

В данном дипломном проекте описывается создание системы автоматизированного анализа оптических рефлектограмм, созданного на базе портативного рефлектометра серии KIWI-7000 , предназначенного для работы в таких операционных системах как Windows, Linux и МСВС.

1.2 Постановка задачи

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

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

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

Основными задачами являются:

1. Разработка системы анализа данных рефлектометра с целью построение оптических рефлектограмм.

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

3. Написание программно-технической документации, и руководства пользователя.

(Рефлектометры KIWI производятся одноименной отечественной компанией и уже сегодня работают в отечественном ОПК, одной из поставленных задач которого является создание системы мониторинга за портативными рефлектометрами, а значит в рентабельности проекта не может быть никаких сомнений.)

1.3 Системы мониторинга ВОЛС

1.3.1 Рефлектометрия волоконно-оптических линий связи

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

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

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

Рисунок 1.1

В настоящее время выделяют некоторое количество «окон» прозрачности волокон - некоторых диапазонов длин волн, в которых у волокна проявляется наилучшее пропускание света. Рабочие диапазоны «окон» и их наименования приведены в таблице № 1.2.

Таблица № 1.1. Спектральные диапазоны для одномодовых волокон

O - диапазон

1260...1360нм

Основной (Original)

Е - диапазон

1360...1460нм

Расширенный (Extended)

S - диапазон

1460...1530нм

Коротковолновый (Short wavelength)

С - диапазон

1530...1565нм

Стандартный (Conventional)

L - диапазон

1565...1625нм

Длинноволновый (Long wavelength)

U - диапазон

1625...1675нм

Сверхдлинный (Ultra-long wavelength)

Наиболее часто используемые «окна» для передачи данных - это 1310нм и 1550нм, именно они и будут интересовать нас в нашем проекте.

Спектры потерь в изогнутых и в «прямых» волокнах могут существенно различаться. Так, например, в «прямых» волокнах потери на 1550 нм меньше чем на 1310 нм (рис. 1.3). В то же время потери, вносимые при изгибе волокна, на1550 нм больше чем на 1310 нм.

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

сердцевиной и оболочкой, и чем ближе рабочая длина волны к длине волны отсечки. В SM (single mode) волокне длина волны отсечки немного меньше 1310 нм и SM волокно поддерживает одномодовый режим не только на 1550 нм, но и на 1310 нм. Однако так каr 1550 нм находится дальше от длины волны отсечки, то потери, вносимые при изгибе волокна, как видно из рис. 1.7, на этой длине волны заметно больше, чем на 1310 нм. Этот факт используется в рефлектометрии для поиска мест изгиба волокон.

Потери в месте соединения волокон

Распределение интенсивности первой моды в поперечном сечении волокна хорошо описывается функцией Гаусса:

,

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

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

В принципе, существуют еще потери, возникающие из-за отражения света от торца волокна, из-за эллиптичности модовых пятен и не параллельности осей соединяемых волокон. Потери, обусловленные френелевским отражением пренебрежимо малы, так как волокна стремятся соединять так, чтобы между ними возник оптический контакт. Например, френелевские потери в оптическом разъеме с коэффициентом отражения R = 10-4 (-40 дБ) равны:

Принцип действия OTDR

Принцип действия OTDR (Optical Time Domain Reflectometer) мало чем отличается от импульсных рефлектометров, которые применяют при тестировании электрических кабелей. Оба типа рефлектометров посылают в линию мощный зондирующий импульс (оптический или электрический) и производят измерения мощности и времени запаздывания импульсов, возвращающихся обратно в рефлектометр. Различие в том, что в электрической линии наблюдаются только отраженные импульсы. Они образуются в местах, где в линии имеются скачки волнового сопротивления. В оптических же волокнах обратная волна образуется не только за счет отражения от больших (по сравнению с длиной волны) дефектов, но и за счет релеевского рассеяния. Рассеяние света происходит на неоднородностях показателя преломления кварцевого стекла, образующихся при остывании протянутого волокна. Размер этих неоднородностей (релеевских центров) значительно меньше длины волны и свет на них рассеивается во всех направлениях сразу, в том числе и назад в волокно (рис. 1.13)

Рис. 1.2. В OTDR приходят импульсы света рассеянные назад в моду волокна

Релеевские центры расположены однородно вдоль волокна, и и всю информацию о параметрах линии, влияющих на отраженный свет можно получить из рассеяной на этих центрах волне. Именно за счет анализа рассеянного излучения удается находить неотражающие (поглощающие) неоднородности в волокне. Например, по сигналу обратного релеевского рассеяния света можно измерить распределение потерь в строительных длинах оптических кабелей и потери в сростках волокон. Такие измерения нельзя выполнить, регистрируя только отраженное (а не рассеянное) излучение. Доля мощности света, рассеиваемая назад в моду волокна крайне мала. Например, при ширине импульса 1м (длительность импульса 10 нс) коэффициент обратного релеевского рассеяния составляет величину около -70 дБ. Поэтому, в OTDR в волокно посылаются импульсы большой мощности и большой длительности, а для детектирования рассеянных назад импульсов света применяются высокочувствительные фотоприемники. 20

В большинстве моделей OTDR используется модульная конструкция (рис. 1.14). Она содержит базовый модуль и несколько сменных оптических модулей. Базовый модуль представляет собой персональный компьютер, приспособленный для обработки сигнала и вывода его на дисплей. Оптический модуль включает в себя лазерный диод, фотоприемник, оптический ответвитель и оптический разъем. Стоимость оптического модуля зависит от величины его динамического диапазона и может в несколько раз превышать стоимость базового модуля. Модульная конструкция OTDR позволяет потребителю не только выбрать необходимую ему на данный момент конфигурацию прибора, но и в дальнейшем модернизировать прибор, например, установив, многомодовый модуль или одномодовый модуль с большим динамическим диапазоном.

В качестве источника излучения в оптическом модуле обычно используется лазерные диоды типа Фабри-Перо, наибольшая же мощность излучения (и, соответственно, динамический диапазон рефлектометра) достигается с помощью лазерных диодов с квантовыми ямами. С их помощью генерируются импульсы мощностью 10...1000 мВт, длительностью от 2 нс…20 мкc и частотой повторения несколько килогерц. Эти импульсы поступают через ответвитель на оптический разъем, к которому подключается исследуемое волокно. Рассеянные в волокне импульсы света возвращаются в оптический модуль и передаются с помощью ответвителя на фотоприемник (лавинный фотодиод), где они преобразуются в электрический сигнал. Этот сигнал усиливается, накапливается, обрабатывается в базовом модуле и отображается на дисплее в графической форме в виде рефлектограммы. Такое представление информации позволяет анализировать её как визуально, так и автоматически с помощью встроенных программных алгоритмов. Мощность рассеянных назад импульсов на 80…50 дБ (в зависимости от их длительности) меньше мощности импульсов, вводимых в волокно. Поэтому для улучшения отношения сигнал/шум используется многократное усреднение результатов измерений. Причем для их эффективного усреднения достаточно нескольких секунд, так как время, затрачиваемое на прохождении линии мало (100 км свет проходит за 1 мсек). Типичная рефлектограмма содержит около 32 000 измеряемых точек и при вычислении каждой такой точки усредняется несколько тысяч импульсов. Весь этот массив данных рефлектометр обрабатывает за долю секунды. Первая измеренная рефлектограмма сразу выводится на дисплей. Далее на дисплей выводятся усредненные рефлектограммы. При каждом удвоении времени измерений шумы в усредненной рефлектограмме уменьшаются примерно на 0.75 дБ.

Назначение OTDR

Каждый тип неоднородности (сварное соединение волокон, трещина, оптический разъем и т.д.) имеет свой характерный образ на дисплее OTDR, и может быть легко идентифицирован оператором (рис. 1.15). В автоматическом режиме OTDR сам определяет тип неоднородности, рассчитывает потери на участках линии, коэффициенты отражения от неоднородностей и т.

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

Так, например, отражающие неоднородности (разъемные соединения волокон, трещины, торец волокна) проявляются на рефлектограмме в виде узких пиков, а неотражающие неоднородности (сварные соединения и изогнутые участки волокон) - в виде изгибов в рефлектограмме. Участки рефлектограммы, расположенные между неоднородностями, имеют вид прямых линий с отрицательным наклоном. Угол наклона 22

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

Таблица № 1.2. Параметры линии передачи, измеряемые с помощью OTDR.

Наименование объекта измерений

Измеряемый параметр

Каждая неоднородность в линии передачи

местоположение потери коэффициент отражения

Каждый оптический кабель

строительная длина, полные потери в дБ, погонные потери в дБ/км, полные обратные потери

(ORL)

Полностью смонтированная линия передачи

длина линии полные потери в дБ полные обратные потери (ORL)

Важным достоинством рефлектометрических измерений является то, что в них измерительный прибор подключается только к одному концу линии (рис. 1.16). Так как типичная длина регенерационного участка в магистральной линии передачи составляет около 100 км (с оптическими усилителями ~ 1000 км), то ясно, что подключать измерительную аппаратуру только к одному концу такой линии значительно проще.

Рис. 1.3. Рефлектометр подключается только к одному из концов линии.

После того, как линия смонтирована, измеряются потери во всех соединениях волокон и расстояния до них. При этом фиксируется рефлектограмма всего регенерационного участка линии со всеми её особенностями, указывающими местоположение сварных соединений волокон и величину потерь в них. Эта рефлектограмма используется для географической привязки к местности и в дальнейшем служит для контроля деградации линии в процессе её старения. На рис 1.17 в качестве примера приведены рефлектограммы (новая и старая) одного и того же регенерационного участка линии длиной около 30 км, измеренные при сдаче и после одного года эксплуатации линии. Видно, что по прошествии года потери в сварном соединении волокон, расположенном на расстоянии около 17 км от начала линии, увеличились на несколько дБ. Это значит, что линия уже практически вышла из строя, и для того, чтобы восстановить линию, это сварное соединение волокон необходимо переделать.

Рис. 1.4. Контроль изменения полных потерь в линии передачи в процессе её старения.

Разрушение волокон в оптических кабелях происходит в основном из-за натяжения волокон и проникновения в кабель воды. Избыточные натяжения волокон могут возникнуть как из-за нарушений технологии изготовления кабеля на заводе, так и при деформации кабелей подвешенных на линиях электропередачи или уложенных грунт подверженный мерзлотным деформациям, землетрясениям и т.д. Однако с помощью OTDR нельзя измерить натяжение волокон в оптических кабелях. Для этого необходим значительно более дорогой и сложный бриллюэновский рефлектометр (BOTDR). Многие оптические кабели в линиях передачи содержат запасные (темные) волокна. Потери в темных волокнах можно контролировать с помощью рефлектометра обычным способом, подключившись к одному концу темного волокна, в то время как передача трафика осуществляется по соседним (активным) волокнам. При этом измерения можно проводить на тех же длинах волн, на которых обычно ведется передача трафика. Эффективность такого способа обусловлена тем, что, как показывает практика, примерно в 80% случаев повреждение кабеля нарушает работу одновременно всех волокон. Для повышения надежности линии передачи необходимо проводить тестирование активных волокон. Тестирование активных волокон обычно проводится на более длинных волнах, так как в изогнутом волокне потери быстро возрастают при увеличении длины волны. Так, если передача ведется на длине волны 1310 нм, то для тестирования используется длина волны 1550 нм, а если передача ведется на длине волны 1550 нм, то тестирование линии осуществляется на длинах волн 1610...1650 нм (рис. 1.18).

Рис. 1.5. Схема тестирования активного волокна с помощью рефлектометра работающего на длине волны 1625 нм.

С помощью WDM ответвителя рефлектометр может быть подключен к линии передачи практически без потерь на рабочей длине волны линии. Такой ответвитель пропускает излучение с длиной волны, на которой ведется передача трафика и ответвляет излучение с длиной волны, на которой проводится тестирование линии. Перед приемником в линии передачи устанавливается оптический фильтр, не пропускающий излучение на той длине волны, на которой работает рефлектометр, а перед рефлектометром фильтр, не пропускающий излучение, на той длине волны, на которой ведется передача трафика. Это делается для того, чтобы избежать перекрестных помех, возникающих при попадании в фотоприемник излучения с другой длиной волны. Рефлектометр подсоединяется к линии с помощью оптического переключателя (1 : N), обеспечивающего автоматическое подключение рефлектометра к N волокнам кабеля (поочередно).

1.3.2 Рефлектограммы ВОЛС. Их анализ и расшифровка

Рисунок 1.6. Пример обычной рефлектограммы.

На представленной на рисунке (2.1) рефлектограмме можно наблюдать постепенное уменьшение уровня обратного рассеяния при увеличении длины волокна. По этой рефлектограмме можно определить два коплексных параметра оптического волокна - длину и общее затухание. Рефлектометры отображают эти параметры в сводке с высокой точностью, до 1 см и до 0,01 Дб. Мы же, ориентируясь по рефлектограмме можем сделать вывод что длина данного волокна 26 км и затухание в нем 5 Дб.

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

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

Из рефлектограммы на рисунке (2.2) мы можем получить длину, затухание, и определить состояние дальнего конца волокна. Обратите внимание на пик в конце графика, он явно выделяется из общего уровня шума. Это отражающее событие. Но какое там может быть событие, если конец волокна на 4,5 км? Все просто - это отражение отражения. т.е импульс, который дошел до конца волокна, отразился от него и вернулся обратно к коннектору рефлектометра, отразился от коннектора орбатно в волокно, снова дошел до конца волокна, отразился и был интерпретирован рефлектометром как отражающее событие на двойной длине волокна. При определенных настройках рефлектометра такие отражения видны и на тройной и на четверной, и более длинах волокна. практический интеререс представляет только первой отражение, на двойной длине волокна, оно позволяет сделать однозначный вывод о состоянии дальнего конца волокна. Рас есть отражение в линию, то обратный торец волокна ориентирован под 90 градусов, т.е. по простому волокно разварено. Данное утверждение на 100% справедливо для UPC типа полировки коннеткора. В телевизионных, мультисервисных и PON сетях обычно применяют коннекторы с полировкой APC, они тоже дают отражение на двойной длине волокна, но заметить его бывает сложнее, зачастую нужно перемерять волокно на разных настройках. 

Рисунок 1.8. Пример рефлектограммы с отражающим событием

На предствавленной выше рефлектограмме наблюдается отражающее событие на 5 км, после которого рефлектограмма продолжается. отражающие события, как мы помним, появляеются благодаря наличию отражающей поверхности, в данном случае это патчкорд. Потери на патчкордах могут существенно отличаться, это зависит от состояния конекторов, малейшая пылинка попавшая между ферулами может давать затухание в несколько Дб. Такие события на рефлектограмме так же могут появлятся из-за трещин в волокне. Это лекго дифференциировать выполнив измерения соседнего волокна, и зная хему ВОЛС. Патчкорда не может быть на магистральном участке кабеля, не имеющем промежуточных точек. Если отражающее событие появляется на таком участке, и оно отсутсвует на рефлектограммах соседних волокон, то следует сделать вывод о наличие трещины в волокне. цифрами 2.3,4 и 6 в данном случае обозначаются неотражающие события, предположительно муфты. Итак из данной рефлектограммы можно сделать сдедующие выводы: Длина измеряемого волокна 9 км., затухание 4 Дб, на длине 5 км присутсвует кроссировка волокна.

Рисунок 1.9. Пример рефлектограммы с поглощающим событием

Типичным примером неотражающего события является место сварки оптических волокон. Такие места сварки располагаются в оптических муфтах по трассе, и в оптическом кроссе. Рефлектометр автоматически определяет такие места и указывает в списке событий. В настоящее время приборы для сварки волокон достигли такого совершенства, что многие сварные соединения просто не отображаются на рефлектограмме. Однако всегда можно определить некачественную сварку, а так же наблюдать динамику, если есть архив рефлектограмм за период времени, так как оптическое сварное соединение подвержено деградации со временем, хотя это и очень медленный процесс. На рефлектограмме представлено место сварки, с затуханием около 0,5 дб. На практике, допустимым уровнем считается 0,2 Дб, при этом современные сварочные аппараты для ВОЛС обеспечивают потери на сварке не более 0,02 Дб. Следует упомянуть о таком параметре рефлектометра как динамический диапазон. Чем шире динамический диапазон тем более чувствительным к неотражающим событиям он является. Сегодня в практике рефлектометрии нельзя однозначно сулить об отсутсвии муфт на волокне, если их не фиксирует рефлектометр. Точно такую же картину на рефлектограмме дает загиб волокна. объясняется это тем, что в месте загиба импульсы "выходят" из оболочки волокна, т.е. теряются. Таким образом, можно диагностировать загибы волокна, в местах, где определенно не может быть сварного соединения. Внутри зданий, на небольшом удалении от оконечных устройств, при остуствии муфт, такое событие однозначно говорит от наличие загиба. На магистральных участках, как правило, такие события трактуются как муфта.

Рисунок 1.10. Пример рефлектограммы со сплиттером.

Что за сварщик сварил такую муфту? Более 15 Дб затухания. Нет, наверное это загиб. очень болььшой загиб. но тогда почему после него рефлектограмма продолжается нормально, после такого большого загиба она должна быть очень сильно зашумлена. На самом деле это сплиттер, устройство, разветвляющее волокно и применяющееся в пассивных оптических сетях. В данном случае сплиттер 1х32, существуют и другие значения, для каждого типа сплитера есть типовые значения затухания. Как правило при измерениях специалист уже знает что он меряет PON, поэтому такая картина на рефлектограмме не является сюрпризом. Ниже представлена рефлектограмма, где последовательно располагаются два сплиттера.

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

Событие 3 это сплиттер 1х8, а следом за ним 1х4. Так же обратите внимание на событие 2. Это отражающее событие, но пик на рефлектограмме отсутсвует. Это объясняется особенностями работы рефлектометра. при резком увеличении уровня обратног осигнала, что и происходит в случае отражающего события, встроенная защита отключает приемник рефлектометра, и пик получается плоским, срезаным. Такие собития хорошо видно на рефлектограмме, по плоским "макушкам", и в списке событий по соотвествующим значкам. Мы разобрали основные типовые события отображающиеся на рефлектограммах. Практические приемы рефлектометрии мы рассмотрим в другой статье, посвященной непосредственно работе с рефлектометром. А теперь предлагаю пройти маленький тест. Ниже представлена рефлектограмма некого условного волокна. Проанализируйте ее. определите длину и затухание, а так же типы событий.

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

1.4 Существующие на рынке решения

EXFO NQMS fiber guardian.

EXFO Fiber Guardian - многофункциональная система мониторинга и контроля оптических волокон. В состав системы входит специальное оборудование с установленным программным обеспечением.

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

Программное обеспечение Fiber Guardian позволяет выполнять самые необходимые в мониторинге оптических волокон функции :

· определить длину оптического кабеля (начало и конец линии)

· определить местонахождение и качество сварных соединений (предельно допустимые значения потерь на сварке зависят от типа сети, для городских ВОЛС обычно не более 0,2 dB)

· определить местонахождение и качество оптических коннекторов (предельные значения допустимых величин отражения и потерь зависят от типа сети, типа коннектора и полировки ферулы; обычно отражения не более - 45 dB, потери не более 0,2 dB)

· определить наличие и местоположение трещин, макроизгибов, обрывов

· измерить потери и отражения на основных событиях

· измерить суммарные потери на линии

· создавать эталонные рефлектограммы на основании нескольких измерений подряд

· постоянное сравнение измеряемых показателей с эталонными

· наблюдение деградации волокна

На рисунке (3.1) показан пример интерфейса EXFO NQMS fiber guardian.

Выводы:

EXFO Fiber Guardian является очень мощным и универсальным инструментом для контроля оптических рефлектометров.

Основными плюсами системы являются:

· Высокая функциональность

· Удобный интерфейс

· Простота использования

Основные минусы системы:

· Сложность развертывания

· Очень высокая цена

· Отсутствие возможности работы с портативными рефлектометрами

Рисунок 1.12. Пример графического интерфейса существующей программы NQMS FiberGuardian.

1.5 Разработка технического задания

1.5.1 Основания для разработки

Приказ ректора НИУ ВШЭ об утверждении тем дипломных работ от “__ ” ________ 2015 г. №

1.5.2 Назначение разработки

Функциональным назначением программного обеспечения является автоматический анализ рефлектограмм, полученных рефлектометром серии KIWI-7000 и основанный на этом мониторинг оптических волокон Windows, Linux и МСВС.

1.5.3 Требования к программе

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

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

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

3). Обнаружение оптических событий на рефлектограмме и получение их характеристик.

4). Создание референсных рефлектограмм на основании 10 проведенных измерений. волоконный оптический рефлектограмма программный

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

Требования к составу и параметрам технических средств

В состав технических средств должен входить IBM-совместимый компьютер. Чем выше будет скорость компьютера, тем больше будет быстродействие программы.

Таблица 1.3. Минимальные характеристики системного оборудования.

Процессор

1200 МГц или выше

Оперативная память

256 МБ или выше

Видеоадаптер и монитор

Super VGA (800Ч600)

Свободное место на жёстком диске

1,5 ГБ или больше

Оптические накопители

CD-ROM или DVD-ROM

Устройства взаимодействия с пользователем

Клавиатура и мышь

Другие устройства

Звуковая арта, колонки и/или наушники

Сетевая карта

Требования к информационной и программной совместимостям

Программное обеспечение, разрабатываемое в проекте, должно работать на таких операционных системах как Linux, ОС Windows, а так же на мобильной системе вооруженных сил (МСВС).

1.5.4 Стадии и этапы разработки

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

1). Составление технического задания

2). Проектирование

3). Отладка и тестирование

4). Документирование и внедрение

1.6 Разработка программного модуля

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

Для реализации этой задачи потребуется разработка специального программного обеспечения с графическим интерфейсом. Поскольку модуль, который я разрабатываю является одним из нескольких модулей системы мониторинга, а остальные модули написаны посредствам среды IDE QtCreator, этот модуль логично писать с помощью этой же среды разработки. Достаточно большую часть реализуемого программного модуля будет занимать построение рефлектограмм - т.е. работа с графиками. Для этих целей хорошо подходит дополнительная библиотека для среды разработки QtCreator-а - QcustomPlot, с которой очень удобно работать с графиками.

1.6.1 Средства разработки и языки программирования

Информация о С++

C++ --типизированный язык программирования общего назначения компилируемый статически.

Язык поддерживает такие парадигмы программирования, как:

- процедурное программирование

- объектно-ориентированное программирование

- обобщённое программирование

и обеспечивает такие функции, как:

- модульность

- раздельная компиляция

- обработка исключений

- абстракция данных

- объявление типов (классов) объектов

- виртуальные функции [7]

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

Синтаксис C++ унаследован от языка С. Одним из принципов разработки было сохранение совместимости с C. Сам язык C++ оказал огромное влияние на другие языки программирования, в первую очередь на Java и С#.

C ++ оказывается полезным во всех разработках, где важна производительность С ++ является кроссплатформенным языком, реализован на множестве платформ включая FSF , LLVM , Microsoft и Intel.

C ++ стандартизирован в Международной организации по стандартизации (ISO), последняя (актуальная на данный момент) ратифицированная в ISO была опубликована в декабре 2014 года, и получила стандарт ISO / IEC 14882 : 2014 (неофициально известна как C ++ 14 ). Изначально С++ был стандартизирован в 1998 году и получил стандарт ISO / IEC 14882 : 1998, который затем был улучшен до стандарта C ++ 03, ISO / IEC 14882: 2003.

Актуальный на данный момент стандарт С++14 заменил С++11, он включает в себя расширенную стандартную библиотеку и новые возможности. Первая не стандартизированная версия языка C++ была разработана Бьерном Страуструпом в 1979 году в Bell Labs. Она позиционировалась как надмножество языка С, главной парадигмой которой было объектно-ориентированное программирование.

Информация о библиотеках Qt

Qt -- кроссплатформенный инструментарий разработки ПО на языке программирования C++. [9]

Библиотека Qt может использоваться как для разработки прикладного программного обеспечения с графическим интерфейсом так и для разработки программного обеспечения с интерфейсом командной строки. GUI программы, созданные с помощью библиотеки Qt могут иметь собственный вид интерфейса, в этих случаях Qt классифицируется как Widget Toolkit .

Главная особенность библиотеки Qt, которая отличает ее от других библиотек -- использование Meta Object Compiler (MOC) -- системы предварительной обработки исходного кода. Qt -- это библиотека не для стандартного языка C++, а для его особого наречия, с которого Meta Object Compiler и «переводит» для последующей компиляции любым стандартным C++ компилятором. Использование библиотек Qt значительно удобнее вместе с MOC благодаря таким понятиям сигналы и слоты. Кроме того, это позволяет сделать код более лаконичным. Утилита MOC ищет в заголовочных файлах на C++ описания классов, содержащие макрос Q_OBJECT, и создаёт дополнительный исходный файл на C++, содержащий метаобъектный код.

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

Qt все основные виды компиляторов, в том числе GCC C++ и Visual Studio Suite.

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

Информация о QCustomPlot

QCustomPlot Является QT C++ виджетом, который служит для построения и визуализации данных. Он не имеет никаких дополнительных зависимостей и полностью документирован. Эта библиотека ориентирована на создание красивых, качественных 2D графиков публикаций, диаграмм, а также предлагает высокую производительность для приложений визуализации в реальном времени.

Библиотеку QCustomPlot можно экспортировать в различные форматы , такие как PDF файлы и в файлы растровых изображений, таких как PNG , JPG и BMP. QCustomPlot это решение для отображения данных в реальном времени внутри приложения , а также для обеспечения высокого качества графики.

1.6.2 Описание процесса разработки

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

1.7 Результаты работы программных модулей

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

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

Ниже показано подробное описание работы системы анализа рефлектограмм.

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

Рисунок 1.15. Пользовательский интерфейс программы и отображенная рефлектограмма с событиями.

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

Так же в пользовательском интерфейсе пользователь может видеть информацию об отображенной трассе.

Рисунок 1.16. Информация о текущей трассе.

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

Рисунок 1.17. Параметры отображения рефлектограмм.

Рисунок 1.18. Пример референсной рефлектограммы

Может запросить информацию о обнаруженных на трассе событиях.

Рисунок 1.19. Окно запроса информации о событиях.

И посмотреть ее.

Рисунок 1.20. Окно информации о событиях.

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

Рисунок 1.21. Сохранение и печать отчетов.

2. Конструкторско-технологическая часть

2.1 Выбор модели технологического процесса разработки программного обеспечения

2.1.1 Общие сведения

Разработка программного обеспечения включает в себя следующие этапы:

- программирование

- документирование

- тестирование

- исправление ошибок

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

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

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

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

2.1.2 Модели и методологии технологического процесса разработки программного обеспечения

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

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

Каскадная модель (Модель Водопада)

Каскадная модель (англ. waterfall model, она же модель "Водопад") -- модель последовательного процесса разработки программного обеспечения, в которой фазы который последовательно, как потоком переходят из одной в другую. [11]

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

Фазы каскадной модели:

1) Определение требований

2) Проектирование

3) Конструирование

4) Воплощение

5) Тестирование и отладка

6) Инсталляция

7) Поддержка

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

Переход к следующей фазе в каскадной модели происходит лишь в том случае, если этап полностью завершен. Возвращений на предыдущие этапы в этой модели не предусматривается.

Спирамльная модель

Спиральная модель разработана Барри Боэмом в 1986 году и предполагает совсем иную концепцию разработки ПО. Она сочетает в себе процесс проектирования и постадийного прототипирования, особое внимание уделяя начальным этапам жизненного цикла программы - анализ и проектирование. Отличительной особенностью модели является особое внимание к появляющимся рискам, которые могут повлиять на организацию жизненного цикла программы. [12]

Десять наиболее распространённых рисков по Боэму:

1.)Недостаток специалистов.

2.)Ограниченны сроки и бюджет.

3.)Реализация сомнительной функциональности.

4.)Разработка неудобного пользовательского интерфейса.

5.)Излишняя оптимизация

6.)Непрерывный поток изменений.

7.)Недостаток информации

8.)Ошибки или недостатки в работе, выполняемой сторонними ресурсами

9.)Низкая производительность получаемой системы.

10.)большая разница в уровне квалификации специалистов разных областей знаний.

Основная часть рисков связана с организационными вопросами и взаимодействием команды разработки.

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

Каждый виток разбит на 4 составляющих:

1).оценка и устранение рисков,

2.)определение целей,

3.)разработка и тестирование,

4.)планирование.

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

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

Методология быстрой разработки приложений RAD (Rapid Application Development) является одним из возможных подходов к созданию программного обеспечения в рамках спиральной модели жизненного цикла.

Процесс разработки программного обеспечения в основе которого лежит методология RAD включает в себя 4 элемента:

небольшую команду программистов (от 2 до 10 человек);

короткий, но тщательно проработанный производственный график (от 2 до 6 месяцев);

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

Жизненный цикл программного обеспечения по методологии RAD состоит из четырёх фаз:

фаза определения требований и анализа;

фаза проектирования;

фаза реализации;

фаза внедрения.

Итеративный подход (англ. iteration, «повторение») в разработке программного обеспечения -- это выполнение работ параллельно с непрерывным анализом полученных результатов и корректировкой предыдущих этапов работы. [13]

В данном методе проект проходит на каждой фазе повторяющийся цикл PDCA: Планирование -- Реализация -- Проверка -- Оценка (англ. plan-do-check-act cycle).

Основные преимущества:

Минимизация затрат, за чет снижения рисков на ранних стадиях разработки проекта.

Связь между разработчиком и заказчиком (потребителем) для обеспечения полного соответствия продукта потребностям потребителя.

Акцентирования внимания на наиболее важных направлениях в проекте

Непрерывное итеративное тестирование

Обнаружение конфликтов между требованиями и реализацией

Более равномерная загрузка участников проекта

Эффективное использование накопленного опыта

Реальная оценка текущего проекта

Гибкая методология разработки

(англ. Agile software development, agile-методы) -- серия подходов к разработке программного обеспечения, ориентированных на использование итеративной разработки, динамическое формирование требований и обеспечение их реализации в результате постоянного взаимодействия внутри самоорганизующихся рабочих групп, состоящих из специалистов различного профиля. Гибкая методология включает в себя несколько методик таких как экстремальное программирование, DSDM, Scrum, FDD. [14]

Отличительной особенностью гибких методологий является серия коротких циклов разработки, называемых итерациями. Они нацелены на минимизацию рисков и обычно длятся 10-15 дней. Каждая итерация является миниатюрным программным проектом, включающим в себя все необходимые задачи разработки: планирование, анализ требований, проектирование, программирование, тестирование и документирование.

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

2.1.3 Выбор модели разработки

Произведем оценку ситуации при разработке нашего проекта:

1) Имеется один разработчик.

2) Техническое задание в сформулировано заранее и в полной мере описывает поставленную разработчику задачу.

3) Связи с заказчиком не требуется

4) Дополнений к техническому заданию не планируется.

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

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

2.2 Поэтапный процесс разработки программного обеспечения

2.2.1 Методика работы

1) Определение требований

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

2) Проектирование проекта разбивается на несколько частей:

1. Работа с байт массивом, его расшифровка и получение информации.

2. Разработка программного обеспечения для анализа рефлектограмм. Включает в себя следующие этапы:

· Построение рефлектограмм

· Анализ рефлектограмм

· Мониторинг трассы

3) Конструирование

Для конструирования системы использовались следующие средства и инструментарии : Qt 5, C++11 (ISO/IEC 14882:2011)

4) Тестирование и отладка

Тестирование программного обеспечения производилось с помощью встроенных утилит среды QtCreator

5) Инсталляция

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

Мобильная система вооруженных сил разработана на базе Linux Red Hat, следовательно для них инсталлятор может быть общим. Лучше всего для этого в настоящее время подходит менеджер пакетов RPM Package Manager. Программа позволяет устанавливать, удалять и обновлять программное обеспечение.

Установку программы в OS Windows будем осуществлять с помощью программы для сборки инсталяторов Inno Setup Compiler, эта утилита обладает мощной функциональной базой и проста в использовании.

6) Поддержка

Сопровождение программного комплекса осуществляется в соответствии с ГОСТ 34.601-90 АС.

2.2.2 Подробное описание процесса разработки

Анализ получаемых программой байт-массивов и работа с ними

Для построения рефлектограммы потребовалось подключение библиотеки QCustomPlot.

Для этого в папку с исходными кодами проекта необходимо добавить два файла библиотеки:

Рисунок 2.1. Добавление файлов библиотеки.

Рисунок 2.2.Добавленные файлы библиотеки.

В файл проекта .pro дописываем слово printsupport

Изначально рефлектограмма приходит на компьютер в виде одномерного байт-массива.

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

С 18 позиции (символа) в файле следующие 4 байта определяют количество произведенных измерений.

С позиции 1B+1 (28 позиция) каждые 2 байта, деленные на 1024 показывают оптическую мощность.

С позиции 1B(27)+2*LEN+28(40) 4 байта показывают время измерения в секундах.

С позиции 1B(27)+2*LEN+3C(60) 8 байт показывают интервал измерений

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

Перевод интервала измерения в шаг осуществляется по формуле :

(2.99792458+e8 * INT * 100)/(IOR*200)

IOR это коэффициент преломления света в кварцевом оптоволокне.

Этот байт массив попадает в функцию plotter (int mass[]);

Эта функция в свою очердь создает 2 обьекта : QVector<double> X(3924); QVector<double> Y(3924);

...

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

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