Материал: Разработка систем сбора и отображения данных систем теплоснабжения

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

все операции по получению данных при удаленном доступе осуществляются из окна "Менеджер удаленного опроса приборов", которое вызывается командой [Связь - Удаленный опрос приборов] или одноименной командой с панели связи (рисунок 12)

Рисунок 12 - Менеджер удалённого опроса приборов

.3 Экспорт данных

Экспорт данных можно осуществлять двумя способами:

средствами программы "ПРОЛОГ";

используя СУБД Microsoft Office Access со встроенным в него языком программирования VBA.

.3.1 Экспорт данных средствами программы "ПРОЛОГ"

Данные из таблиц за любой интервал времени можно экспортировать на лист EXCEL или в один из следующих форматов: HTML, XML, DBF, RTF, CSV, SQL, либо в буфер обмена Windows. Для экспорта данных следует выделить название таблицы в панели базы данных и нажать кнопку "Экспорт данных" на панели связи.

В появляющихся окнах выбираются: период времени, за который будут экспортированы данные, формат экспорта и, при необходимости, дополнительные опции (рисунки с 13 по 16).

Рисунок 13 - Экспорт данных. Выбор периода

Рисунок 14 - Экспорт данных. Ввод имени файла, выбор директории для экспорта и формата файла

Рисунок 5 - Экспорт данных. Выбор экспортируемых полей

Рисунок 16 - Экспорт данных. Выбор шаблона оформления сохраняемой HTML-страницы

.3.2 Экспорт данных с использованием VBA

При экспортировании данных посредством Microsoft Access необходимо создать макрос на языке программирования VBA.

Макрос (от англ. macros, мн.ч. от macro) - программный объект, при обработке «развёртывающийся» в последовательность действий или команд.

При написании макроса для экспорта необходимо учесть несколько особенностей (рисунок 17):

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

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

Рисунок 17 - База данных программы "ПРОЛОГ"

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

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

Учитывая описанные выше особенности таблиц с данными, составляется алгоритм будущей программы на примере узла учёта СПТ961, приведённый приложении А.

Всю работу алгоритма можно разделить на несколько этапов:

а) подготовка к экспорту:

) открытие html-документов для перезаписи всего имеющегося в них кода;

) создание шапок html-документов и таблиц, находящихся внутри них;

) подключение к базе данных и таблице с показаниями узла учёта СПТ961;

б) экспорт данных:

) создание цикла для экспорта данных. Весь этап экспорта данных будет повторяться до тех пор, пока все записи исходной таблицы не будут экспортированы в соответствующие файлы;

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

) создание новой строки в таблице и её заполнение, исходя из значения второго поля каждой записи таблицы с данными. Благодаря этому полю определяется, в какой файл необходимо экспортировать текущую запись. Так, если значение поля равно "0", то экспорт осуществляется в html-документ, содержащий почасовые данные узла учёта. Также при выполнении учитывается вероятность неверного экспорта пустых полей. В таких полях вместо значения "null" будет выводиться символ пробела.

в) завершение работы макроса:

) запись в html-документы конечного кода;

) закрытие записанных html-документов;

) отключение от таблицы и баз данных;

На основе полученного алгоритма составляется программный код макроса, который приведён в приложении Б.

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

Главным достоинством разработанного макроса является возможность автоматизированного экспорта всех необходимых данных. Это становится возможным благодаря двум ключевым особенностям:

в Microsoft Office Access существует возможность автоматически запускать макрос на исполнение при каждом открытии базы данных. Для этого лишь необходимо выставить уровень безопасности программы на низкий уровень через ее настройки, а также дать макросу имя "AutoExec". В Microsoft Office Access это имя зарезервировано непосредственно для выполнения при открытии базы данных, поэтому при каждом открытии базы данных макрос будет автоматически выполняться;

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

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

Результатом экспорта любым из вариантов являются HTML-страницы, приведённые на рисунках 18 и 19.

Рисунок 18 - Суточный архив узла СПТ961

Рисунок 19 - Часовой архив узла СПГ761

7 Реализация Web-сервера

.1 Установка Apache

Web-сервер Apache очень прост в установке, поэтому следует рассмотреть лишь самый важный шаг (рисунок 20).

Рис. 20 - Установка Apache. Информация о сервере

На данном шаге необходимо задать самые важные настройки Web-сервера:

Network Domain - имя вашего сервера DNS, в котором ваш Web-сервер будет зарегистрирован. При эксплуатации Web-сервера предполагается использовать Apache для доступа к данным по локальной сети. Чтобы проектируемый сайт был доступен для просмотра по локальной сети, необходимо указать в этом поле IP-адрес сервера (192.168.1.2);

Server Name - полное имя вашего сервера. Опять же, предполагается использовать Apache для доступа по локальной сети, поэтому здесь следует так же указать IP-адрес сервера (192.168.1.2);

Administrator's Email Address. Адрес администратора сервера. Этот адрес будет отображаться во время ошибок работы Web-сервера, никакой другой функции на этот адрес не возложено.

.2 Разработка сайта с показаниями приборов

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

Главной страницей любого сайта является файл "index.html", который хранится Web-сервером в директории: C:\Program Files\Apache\htdocs. Все остальные страницы сайта также размещаются здесь.

После установки Web-сервера страница с таким именем в указанной директории уже существует, поэтому её достаточно лишь изменить. HTML-страницы доступны для редактирования при помощи стандартного Windows-приложения - "Блокнот". После открытия документа необходимо заменить имеющийся там код на следующий:

<html>

<head>

<title>Сайт котельной </title></head>

<body>

<h1><div align="center"><b>Добро пожаловать на тестовый вариант сайта с показаниями приборов</b></div></h1>

<div align="center"><a href="СПТ961.html">Узел учёта СПТ961</a></div>

<br>

<div align="center"><a href="СПГ761.html">Узел учёта СПГ761</a></div>

</body>

</html>

В результате в окне браузера можно будет увидеть тестовый вариант сайта (рисунок 21).

Рисунок 21 - Тестовый вариант сайта с показаниями приборов

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

Для прибора СПТ961 необходимо создать документ "СПТ961.html" и внести в него следующий код:

<html>

<head><title>Узел учёта СПТ961</title></head>

<body>

<b><big>Выберите необходимый архив данных:</big></b>

<br>

<a href="Часовой_архив_узла_СПТ961_.html">Часовой архив узла СПТ961</a>

<br>

<a href="Суточный_архив_узла_СПТ961_.html">Суточный архив узла СПТ961</a>

<br>

<a href="Месячный_архив_узла_СПТ961_.html">Месячный архив узла СПТ961</a>

<br>

<a href="Перерывы_питания_узла_СПТ961_.html">Архив перерывов питания узла СПТ961</a>

<br>

<a href="Нештатные_узла_СПТ961_.html">Архив нештатных ситуаций узла СПТ961</a>

<br>

<a href="Тотальные_узла_СПТ961_.html">Тотальный архив узла СПТ961</a>

<br>

</body>

</html>

В результате в окне браузера можно будет увидеть тестовый вариант страницы прибора СПТ961 (рисунок 22).

Рисунок 22 - Тестовый вариант страницы прибора СПТ961

Для прибора СПГ761 необходимо создать документ "СПГ761.html" и внести в него следующий код:

<html>

<head><title>Узел учёта СПГ761</title></head>

<body>

<b><big>Выберите необходимый архив данных:</big></b>

<br>

<a href="Часовой_архив_узла__СПГ761_.html">Часовой архив узла СПГ761</a>

<br>

<a href="Суточный_архив_узла__СПГ761_.html">Суточный архив узла СПГ761</a>

<br>

<a href="Декадный_архив_узла__СПГ761_.html">Декадный архив узла СПГ761</a>

<br>

<a href="Месячный_архив_узла__СПГ761_.html">Месячный архив узла СПГ761</a>

<a href="Нештатные_узла__СПГ761_.html">Архив нештатных ситуаций узла СПГ761</a>

<br>

<a href="Тотальные_узла__СПГ761_.html">Тотальный архив узла СПГ761</a> <br>

</body>

</html>

В результате в окне браузера можно будет увидеть тестовый вариант страницы прибора СПТ961 (рисунок 23).

Рисунок 23 - Тестовый вариант страницы прибора СПТ961

Оба эти документа ссылаются на HTML-страницы, предварительно созданные с помощью VBA-макроса и являющиеся, по сути, таблицами с данными приборов.

8. Принцип работы серверной системы

Всё необходимое программное обеспечение корректно работает в Windows-среде, поэтому понадобится всего один сервер.

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

а) сбор данных;

Опрос контроллеров производится программным обеспечением "ПРОЛОГ". Полученные данные сохраняются в таблицах архива программы.

б) экспорт данных;

Имеющиеся таблицы с данными при помощи Microsoft Office Access и встроенного в него языка программирования VBA экспортируются в HTML-формат и сохраняются в директории: C:\Program Files\Apache\htdocs

в) отображение данных;

Полученные страницы посредством Web-интерфейса, предоставляемого сервером Apache, становятся доступны для любой рабочей станции, подключённой к ЛВС цеха.

Рисунок 24 - Общая схема работы серверной системы

9 Безопасность труда при реализации проекта

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

.1 Организация рабочего места оператора

Применение электронно-вычислительных машин (ЭВМ) и персональных компьютеров (ПК) в инженерной и научной работе имеет целью ускорение решения поставленных задач. Совершенно очевидно, что насколько быстро и качественно будет решена задача, зависит не только от возможностей собственно машины, но и от действия оператора, управляющего ее работой. Следует учитывать, что работа программиста является, прежде всего, умственной, а не физической, и именно умственная усталость чаще всего приводит к ошибкам, которые могут вызвать серьезные последствия, особенно, если учесть, что в настоящее время программное обеспечение ПК может стоить значительно больше самой машины. Необходимо, следовательно, максимально упростить и облегчить труд программиста. Работа на ПК связана с достаточно сильным информационным обменом между человеком-оператором и машиной-ЭВМ (клавиатура, мышь, средства отображения информации), что способствует быстрой утомляемости. Другими факторами, влияющими на утомление программиста, являются длительное пребывание в положении сидя и длительная зрительная нагрузка. Будем подходить к рассмотрению труда программиста с точки зрения эргономики - комплексной науки, в основании которой лежит исследование трудовой деятельности человека с целью приспособления условий труда к физическим возможностям человеческого организма и активного воздействия на всестороннее развитие человеческих способностей. Под рабочим местом оператора ЭВМ понимают зону трудовой деятельности, оснащенную всем техническим и вспомогательным оборудованием, необходимым для осуществления управлением ЭВМ. Организация рабочего места программиста должна удовлетворять следующим эргономическим и психологическим требованиям:

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

б) обозримость - это требование организовать своё рабочее место так, чтобы все без исключения материалы в любой момент были видны. Хорошая обозримость в сочетании с постоянством мест хранения материалов, должна свести на нет потери времени на их поиск. Нормальной должна быть такая организация труда, при которой слово «искать» было бы вообще исключено из лексикона;

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