Распределенная информационно- управляющая система поток-С

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

Краткое описание

Дипломная работа посвящена описанию опыта создания распределенной информационно-управляющей системы ПоТок-С для филиала ПТС ОАО “Северо-Западный Телеком”, которая в настоящее время сдана в опытную эксплуатацию. Следует сказать, что ОАО “Северо-Западный Телеком” была одной из первых организаций в России, в которой в 1996 году начались работы по использованию систем для мониторинга режимов теплоснабжения и коммерческого учета потребления тепла сооружениями этой организации. Сложившаяся инфраструктура позволила в рамках выполнения этого проекта провести ряд исследований и демонстрационных экспериментов, результаты которых представляют интерес для системных интеграторов подобного рода проектов, а также для целого ряда смежных областей.

Содержание

ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ…………………………………………………………………3
ВВЕДЕНИЕ……………………………………………………………………………………….……4
1 ОБЗОР НАУЧНО-ТЕХНИЧЕСКОЙ ЛИТЕРАТУРЫ И ПАТЕНТОВ…………….…….…….6
1.1 Обзор систем мониторинга и управления распределенными объектами ……….…....6
1.2 Обзор контроллеров и встраиваемых компьютеров ……………………………………..21

2 ПОСТАНОВКА ЗАДАЧИ…………………………………………………………………………40
2.1 Описание проблематики……………………………………………………………………40
2.2 Общие требования к системам класса ИУС (СДМУ)…………………………………….41
2.3 Особенности построения и концепция РИУС ПоТок-С………………………………….43
2.4 Требования к программному обеспечению системы……………………………………..46
3 РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…………………………………….……..48
3.1 Низкоуровневое ПО контроллера ASK-Lab……………………….……………………...48
3.2 Высокоуровневое ПО системы видеоконтроля……………….………………………….68
4 ОЦЕНКА РЕЗУЛЬТАТОВ РАЗРАБОТКИ…………………………………………….…….......76
4.1 Оценка результатов разработанной системы…………………………………………….76
4.2 Оценка результатов разработанного ПО контроллера ASK-Lab……………………….78
4.3 Результаты применения системы видеоконтроля ……………………………….………80
ЗАКЛЮЧЕНИЕ…………………………………………………………………………………...….83
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ………………….……………………………..85

Прикрепленные файлы: 1 файл

dip_roch.doc

— 1.81 Мб (Скачать документ)

Режимы запуска программы  выбираются из меню Debugger->Select Tool

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

 

Запуск и  останов программы. Запуск программы осуществляется из меню Debugger->Run. Останов выполнения программы осуществляется из меню Debugger->Pause. После останова программы, средствами среды программирования могут быть доступны для просмотра и изменения данные (переменные), содержимое встроенной памяти EEPROM, значение регистров и портов ввода-вывода, а также положение программного указателя. Программа может быть запущена вновь с того места, в котором произошел останов из меню Debugger->Run. Полный останов программы осуществляется из меню Debugger->Halt. В этом случае, при запуске, программа выполняется с начала.

 

Пошаговое выполнение программы. После остановки программы можно осуществить пошаговое ее выполнение. Возможно два варианта:

  • Пошаговое выполнение всех без исключения команд (Debugger->Step Into)
  • Пошаговое выполнение команд без “захода” в тело функций (Debugger->Step Over)

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

 

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

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

При размещении множества точек останова можно  использовать пункт меню Debugger->Breakpoints, чтобы открыть окно Breakpoint List. Окно Breakpoint List позволяет управлять присутствующими  точками останова (добавлять, удалять, разрешать, запрещать).

 

Программный указатель. При любом останове программы, в левой части окна редактирования появляется пиктограмма (зеленая стрелка). Она указывает на строку (команду), на которой остановилось выполнение программы. Это и есть программный указатель. Программный указатель можно выставить в любом месте программы, нажав правую кнопку мыши в нужной строке программы в окне редактора и выбрав в контекстном меню пункт Set PC at Cursor. Таким образом, после запуска программы, она будет выполнятся с места, в котором установлен программный указатель.

 

Проверка значений. Если программа остановлена в отладчике, можно проверить, а также изменить значение любого идентификатора, регистра, порта ввода-вывода, ячейки памяти EEPROM и памяти данных и т.д. Для этого в MPLab существуют несколько панелей, вызываемых из меню View:

  • Hardware stack;
  • Watch;
  • Program memory;
  • File Registers;
  • EEPROM.

Hardware stack – позволяет просмотреть последовательность точек возврата после прерываний и вызова функций. Отображается номер точки и адрес возврата.

Watch – позволяет  установить наблюдение за любой  ячейкой памяти данных (переменные, регистры, значение портов ввода-вывода). Объекты для наблюдения можно  добавлять и удалять. Значения  объектов можно изменять.

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

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

EEPROM – позволяет просмотреть  и изменить значение ячеек  памяти EEPROM.

 

3.1.5.2 Особенности отладки, связанные  с использованием технологии  мОСРВ

 

Использование технологии мОСРВ при разработке ПО контроллера  приносит некоторые особенности процесса отладки конечного кода.

Выше было сказано, что  для описания структуры ПО под  мОСРВ А3 используется специализированный инструментарий Конструктор А3. В конечном счете, Конструктор А3 позволяет описать взаимодействие задач системы, сделать настройку параметров их выполнения и т.д. Код самих задач пишется отдельно (например, в текстовом редакторе или в среде MPLab), задачи собираются в библиотеку или отдельные модули. Проект из Конструктора А3 транслируется в среду MPLab, и уже там может быть окончательно отлажен и протестирован.

Таким образом, целесообразным будет использование следующей  схемы написания и отладки  ПО контролера:

  1. Определение укрупненной структуры ПО и необходимых задач;
  2. Написание в текстовом редакторе или среде MPLab задач-заглушек (т.е. задачи, которые не выполняют полезного действия, а просто на входное воздействие отвечают некоторым выходным, и которые впоследствии будут заменены другими задачами);
  3. Описание структуры взаимодействия задач в Конструкторе А3 и трансляция проекта в среду MPLab;
  4. Отладка получившейся структуры ПО в среде MPLab, проверка того, что все взаимосвязи правильные и используются все ветви алгоритма;
  5. Детализация структуры ПО, разбиение задач на подзадачи;
  6. Замена некоторых задач-заглушек на задачи, выполняющие требуемые функции;
  7. Переход к пункту 3 до тех пор, пока не будет описана полная структура ПО и задействованы все необходимые задачи (совместно с задачами-заглушками);
  8. Окончательная замена всех задач-заглушек на задачи, выполняющие требуемые функции;
  9. Окончательная отладка ПО в среде MPLab. Возможное исправление кода задач;
  10. Формирование (изменение) библиотеки функции и драйверов на основе задач отлаженного ПО.

 

3.1.5.3 Проверка работоспособности ПО  на примере серийного изделия  “контроллер ASK-Lab”

 

На некотором этапе создания ПО возникает необходимость производить его отладку и тестирование с использованием реальных устройств в условиях их эксплуатации. В нашем случае это контроллер ASL-Lab, который программируется разрабатываемым ПО при помощи программатора PRO MATE II. Тестирование контроллера проходит в два этапа:

  1. Тестирование и отладка ПО на “столе”, т.е. в помещении, где ведется разработка ПО, с использованием специализированного стенда-макета;
  2. Тестирование на объекте Заказчика в реальных условиях эксплуатации.

Для тестирования контроллера  применялось специально разработанное  сотрудником СКБ приложение “Тестирование”, установленное на ПК. Приложение “Тестирование” обеспечивает обмен данными между  ПК и контроллером ASK-Lab, а также позволяет проверить обмен данными со всеми устройствами, подключенными к контроллеру, и д.р. функциональные возможности контроллера.

На первом этапе проводились  следующие типы тестирования:

  • Функциональное тестирование;
  • Нагрузочное тестирование.

 

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

В рамках функционального  тестирования выполнялись следующие  проверки (многократные):

  • Обмен данными между ПК и контроллером (проверка линии связи);
  • Обмен данными между ПК и периферийными устройствами, подключенными к контроллеру – теплосчетчик и теплорегулятор ECL Comfort 300 (проверка линии связи и интерфейса I2C);
  • Ввод пароля на контроллере (проверка клавиатуры, дисплея и энергонезависимой памяти EEPROM);
  • Проверка правильности выполнения управляющих команд при разных паролях (проверка работоспособности портов ввода-вывода и алгоритмов шифрования и дешифрования);
  • Чтение и запись параметров контроллера (проверка памяти программ и энергонезависимой памяти EEPROM);
  • Проверка всех остальных функций, описанных в спецификации.

 

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

В рамках нагрузочного тестирования выполнялись следующие проверки (многократные):

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

 

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

На втором этапе проводилось  длительное тестирование контроллера ASK-Lab на объектах ПТС в реальных условиях эксплуатации. Длительность тестирования составляла 1-7 суток.

В настоящее время, после  многократного тестирования и различных  испытаний, ПО контроллера доведено до требуемой функциональности, устранено  большинство ошибок. Всего на объектах ПТС установлено 10 контроллеров ASK-Lab, которые около полугода функционируют в качестве основного звена в различных узлах учета. За все время эксплуатации, контроллеры показали хорошую функциональность и надежность работы.

 

3.2 Высокоуровневое  ПО системы видеоконтроля

 

3.2.1 Обоснование  выбора инструментальных средств  для разработки ПО

 

3.2.1.1 Выбор  необходимых аппаратных средств

 

Обоснование выбора ПК IBM PC совместимой архитектуры было приведено выше. Разработка ПО для  системы видеоконтроля будет вестись при помощи различных программно-инструментальных средств, установленных на ПК. Следует отметить, что эффективность использования этих средств зависит от характеристик используемого ПК, в наибольшей степени, быстродействия и объема оперативной памяти. С другой стороны, использование слишком дорогостоящей аппаратной базы ведет к неоправданному росту стоимости разработки программного продукта. Рациональным будет выбор ПК с аппаратной базой следующей конфигурации:

  • Процессор:     Intel Pentium 3
  • Тактовая частота:     1000 МГц
  • Объем оперативной памяти:   256 Мб
  • Объем дискового пространства HDD:  10 Гб
  • Видеокарта:    32 Мб
  • Звуковая карта:    встроенная
  • Монитор:     15”

С учетом того, что для  разработки низкоуровнего ПО контроллера  требуется ПК с меньшими требованиями к аппаратным ресурсам, для всего проекта (дипломной работы) выбирается один ПК с большими требованиями к аппаратным ресурсам. Т.е. выбирается ПК с конфигурацией, приведенной в данном разделе.

 

3.2.1.2 Выбор  базовой операционной системы

 

Операционная система Windows в применении на персональных компьютерах является в настоящее время преобладающей перед прочими ОС для IBM PC совместимых компьютеров. Причем наибольшее распространение на территории России имеют следующие версии: Windows 98 и ставшая очень популярной в последнее время Windows XP. К тому же Windows XP является одной из самых удачных операционных систем компании Microsoft, так как она объединяет в себе две концепции, которые компания Microsoft развивала до выпуска Windows XP параллельно: интерфейс, удобный для пользователя и работа в сети. Разрабатываемое программно обеспечение будет совместимо с несколькими операционными системами, а именно Windows 98, Me, 2000, XP.

Информация о работе Распределенная информационно- управляющая система поток-С