49194 (Судовая информационная измерительная система типа "звезда". База данных), страница 2
Описание файла
Документ из архива "Судовая информационная измерительная система типа "звезда". База данных", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "49194"
Текст 2 страницы из документа "49194"
Чтобы объединить все классы, относящиеся к датчикам, в одну иерархию, имеет смысл создать еще один абстрактный базовый класс TDatchic, который является непосредственным суперклассом для всех классов. Рис. 2.3 иллюстрирует полную иерархию классов датчиков.
Рис.2.3 – Иерархия классов датчиков
Однако требования к системе подразумевают наличие общего поведения для всех трех вышеперечисленных классов. В частности, мы должны обеспечить показ текущих значений датчиков в графической форме.
Дня этого имеет смысл создать простой класс WindIndicator для графического представления направления ветра. Изолированный анализ поведения этого класса дает в первом приближении следующий результат:
Имя:
Ответственность:
Графическое представления направления ветра. Операции:
Update - отображение текущего направления ветра.
Абстракций для индикатора температуры TemperatureIndicator может выглядеть следующим образом:
Имя:
TemperatureIndicator
Ответственность:
Графическое представления величины температуры.
Update — отображение текущей температуры.
Абстракция для индикатора атмосферного давлении PressureIndicator может выглядеть следующим образом:
Имя:
PressureIndicator
Ответственность:
Графическое представления величины атмосферного давления. Операции:
Update - отображение текущего значения атмосферного давления.
Абстракция для индикатора влажности воздуха HumidityIndicator может выглядеть следующим образом:
Имя:
HumidityIndicator
Ответственноcть:
Графическое представления величины влажности воздуха. Операции:
Update - отображение текущего значения влажности воздуха.
Чтобы объединить все классы, относящиеся к индикаторам, в одну иерархию, имеет смысл создать еще один абстрактный базовый класс Indicator, который является непосредственным суперклассом для всех классов. Рисунок 2.4 иллюстрирует иерархию классов индикаторов.
Рисунок 2.4 - Иерархия классов индикаторов
2.2 Взаимодействие объектов
В системе имеется глобальный объект-сервер и четыре объекта-датчика. Их взаимодействие заключается в следующем. Датчик отсылает показания на сервер в несколько этапов. Сначала полученное значение записывает в динамический список, затем по истечении заданного момента времени он берет первое значение из очереди и суммирует его с предыдущим. Потом проверяется заданное число на осреднение значения. Если мы накопили это число, то отсылается усредненное число, если же нет, то отсылается полученное значение. После вышеперечисленных действий значение из очереди удаляется. Очередь была введена затем, что интервал времени считывания значения, и его отсылки на сервер может не совпадать.
Сервер в свою очередь определяет, получил ли он текущее или усредненное значение датчика. Если он получил усредненное значение, тогда он проверяет заданный на сервере интервал времени, обновления минимакса. Если интервал времени истек, тогда значение минимакса за заданный промежуток времени сохраняется в файле отчета и пришедшее значение с датчика присваивается как текущее. Если пришедшее значение с датчика не усредненное, а текущее, тогда обновляется диаграмма текущих показаний.
Взаимодействие сервера с датчиками можно представить схемой, представленной на Рис.2.5.
Рис.2.5 — Схема взаимодействия объектов в системе
Цикл жизни датчика можно представить схемой представленной на рис. 2.6.
Рисунок 2.6 — Схема жизненного цикла датчика
3. Пути реализации критериев качества
3.1 Среда разработки
Чтобы максимально использовать преимущества объектно-ориентированного подхода программа была реализована в среде разработки Delphi 5.5 с использованием дополнительных компонент:
DinamicSkinForm v1.6 for Delphi
RX Library 2.75
Delphi была выбрана для реализации системы по следующим причинам:
Высокопроизводителъный компилятор в машинный код.
Объектно-ориентированная модель компонент.
Визуальное (а, следовательно и скоростное) построение приложений изпрограммных прототипов.
С целью улучшения интерфейса программы с пользователем и более удобного представления показаний датчиков были применены графические компоненты.
4. Руководство пользователя
4.1 Руководство по программе-серверу
4.1.2 Назначение
Программа-сервер (далее сервер) предназначена для обработки и отображение информации полученной от датчиков. Сервер может располагаться как на отдельном компьютере, так и на одном компьютере вместе с датчиками. В основные функции сервера входит:
Графическое отображение показаний датчиков;
Вычисление минимакса за заданный промежуток времени;
Ведение отчета
4.1.3 Графическое отображение показаний датчиков
Для каждого датчика отображается хронологическая диаграмма, в которой представлено последние несколько измерений, причем при приеме очередного показания датчика все остальные показания смещаются влево. Кроме этого присутствуют индикаторы для наглядного представления усредненных значений по каждому датчику. Эти индикаторы вынесены в отдельное окно, которое можно вызвать, поставив флажок в поле индикаторы в главном окне сервера.
4.1.4 Вычисление минимакса
Сервер, по каждому датчику производит мониторинг максимального и минимального значения параметра. Временной диапазон обновления этих значений может быть настроен в диалоговом окне Настройки интервалов, которое можно вызвать из основного меню Настройки --> Интервалы или нажав кнопку «Настроить» на панели инструментов внизу главного окна сервера.
4.1.5 Ведение отчета
Сервер может вести отчет, в котором содержится время приема и значения датчиков. Кроме того, через указанные промежутки времени в отчет выводится значение минимумов и максимумов. Кроме показаний датчиков в отчете отображается сведения о подключении и отключения датчиков. Для более удобного просмотра отчета можно нажать на кнопку Просмотреть лог.
4.1.6 Соединение с датчиками
Соединение датчиков с сервером осуществляется средствами самих датчиков. Сервер, при успешном соединении с датчиком, помещает в отчет сведения следующего содержания:
Connected: () При отключении датчика сервер помещает в отчет сведения следующего содержания:
Disconnected: () О том как подсоединить датчик к серверу указанно в руководстве пользователя по клиентам в разделе Соединение с сервером.
4.1.7 Команды главного меню
Главное меню программы сервера расположено в верхней области окна программы и состоит из следующих пунктов меню:
Файл
Открыть — открытие существующего файла отчета;
Выход — выход из программы.
Настройки
• Интервалы — вызов диалогового окна Настройка интервалов.
Справка - вызов справочной системы
4.1.8 Ведение отчета
Сервер может вести отчет (отключить или включить отчет можно поставив флажок Enable Log в нижней части окна сервера), в который заносится время и значения датчиков. Кроме того через указанные промежутки времени в отчет заносится значение минимумов и максимумов. Кроме показаний датчиков в отчете отображается сведения о подключении и отключения датчиков.
Формат сообщении имеет следующий вид:
Формат состояния подключения датчиков:
()
Формат отображения минимакса:
Минимакс за последние
Температура min max
Влажность min max
Давление min max
Ветер min max
Содержимое отчета отображается в нижней части главного окна сервера. Для более удобного просмотра отчета можно нажать на кнопку Просмотреть лог,
Отчет можно сохранить в txt файле (кнопка Сохранить на панели инструментов) или открыть уже существующий (кнопка Открыть лог) или очистить (кнопка Очистить лог).
Поведение отчета легко настраивается. Отчет можно либо вести либо не вести. Переключение между этими состояниями производится установкой либо снятия флажка Enable Log в нижней части окна сервера.
В диалоговом окне Настройка интервалов производится настройка временных интервалов Обновления отчета и Интервал обновления минимакса. Это диалоговое окно вызывается из основного меню
Настройки Интервалы или нажав кнопку Настроить на панели инструментов. Подробнее о настройке этих интервалов описано ниже.
4.1.9 Временные интервалы
Временные интервалы - это интервалы Обновления отчета и Интервал обновления минимакса. Эти интервалы влияют на частоту внесения показаний датчиков в отчет и обновление минимальных и максимальных значений соответственно. Их можно настроить в диалоговом окне Настройка интервалов. Это диалоговое окно вызывается из основного меню Настройки - Интервалы или нажав кнопку Настроить на панели инструментов.
4.2 Руководство по программам-клиентам
4.2.1 Назначение
Программы-клиенты (далее датчики) предназначены для сбора или генерации различных природных явлений, их обработке (вычисления среднего значения за определенный промежуток времени) и отправки данных на сервер. Датчики делятся на;
Датчик температуры
Датчик атмосферного давления
Датчик скорости и направления ветра
Датчик влажности
Каждый датчик генерирует в определенном диапазоне и с определенной скоростью значения. Кроме того датчик вычисляет среднее значение параметра по нескольким значениям. В датчике так же присутствует очередь, в которую помещаются не отосланные значения. Каждый датчик ведет отчет измерений, в котором отображается текущее состояние датчика.
4.2.2 Соединение с сервером
После запуска датчика необходимо соединится с сервером. Существует два способа соединения:
• по IP-адресу сервера (для удаленного соединения с сервером). Для этого необходимо поставить флажок НОSТ or ТСР/IР и ввести в поле IР-адрес машины с сервером и нажать на кнопку Connect.
• по имени сервера. Для этого необходимо убрать флажок НОSТ ог ТСР/IР и ввести имя сервера и нажать кнопку Connect.
При успешном соединении с сервером в отчет сервера будет добавлена соответствующая запись.
Для начала снятия (генерации) датчиком показаний необходимо нажать кнопку §1ап. Однако эта кнопка блокируется, пока датчик не будет успешно соединен с сервером.
4.2.3 Настройка
Датчик может быть настроен в соответствии с требованиями пользователя. Настройке подлежат следующие параметры:
Time: время генерации датчиком нового значения;
Time send: время отправки на сервер сгенерированного значения датчика;
Cound: число, определяющее количество отправок после которого будет произведен расчет и отправка на сервер среднего значения.
Эти параметры можно настроить в верхней части окна датчика, где содержатся соответствующие поля для их настройки.
4.2.4 Ведение отчета
Каждый датчик ведет отчет. Чтобы разрешить ведение отчета необходимо установить флажок Enable Log. В отчете, в зависимости от флага LSD Log, будет выводиться состояние датчика. Флаг LSD Log разрешает добавление в отчет информации о среднем значении датчика за период указанный в поле Count.
Отчет можно сохранить на диске (кнопка Сохранить отчет) или очистить (кнопка Очистить лог).
Заключение
Данный курсовой проект разработан в соответствии с постановкой задачи на курсовое проектирование на тему "Судовая информационно измерительная система" по курсу "Информационно измерительные системы".
При написании программы была использована технология OLE Automatic и клиент-серверная структура приложения, которая позволила максимально облегчить написание приложения и использование современных технологий в реализации поставленной задачи. В системе предусмотрена возможность масштабирования и удаленного расположения составных частей системы с помощью локальной и глобальной сети Internet, применен графический интерфейс для облегчения работы пользователя с программой и лучшей визуализации показаний датчиков.
Система была проверена в локальной сети. Это свидетельствует о том, что разработанную систему можно внедрять в сферу ее применения. Использование данной системы позволит максимально эффективно проводить обмен информации между рабочими комплексами.