(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Незабудка - открытая система архивирования на базе СУБД FIREBIRD. Часть 1. (исходники)

Группа разработчиков под незатейливым названием "КЕМЕРОВОЗ"

Введение

Система НЕЗАБУДКА разрабатывается как бесплатный инструмент c открытым кодом (OPEN SOURCE) для  решения задач АСУТП среднего класса (до 20000 тэгов) с невысокой скоростью процесса (не требуется регистрация данных чаще чем 1 раз в секунду). Она предназначена для предприятий, которые имеют многочисленные объекты

АСУТП, опытных программистов и стремятся разрабатывать собственные элементы SCADA- системы в целях экономии средств и обретения независимости от сторонних фирм. Учитывая высокую стоимость коммерческих SCADA- систем, а также их значительную избыточность в случае применения в АСУТП среднего класса, количество таких предприятий стремительно возрастает. Для их поддержки впервые в России разрабатывается  бесплатная SCADA-система КемеНеЯ, автономной и самодостаточной подсистемой которой является НЕЗАБУДКА (наш адрес ???).

Назначение
            Сбор, хранение и предоставление средств просмотра данных процесса управления.

Возможности

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

Компоненты

- модуль периодического архива (nz_history.dll);

- модуль архива событий и сообщений (nz_message.dll);

- главный модуль просмотра архивов (nezabudka.dll), который подключается к SCADA системе и подключает 2 указанных выше модуля.

Системные требования
Операционная система Windows NT4/2000/XP/2003
Процессор Pentium или старше
Оперативная память 128Мб или больше
Для хранения данных необходима СУБД: Firebird 2.0.3 и выше.

Основные функции главного модуля (номер функции в nezabudka.dll и ее назначение)  :

0 - Инициализация структур данных

2 - Инициализация часовых блоков.Запуск потоков архивации.Начало работы

1 - Вызов журнала сообщений

3 - Вызов среднечасовой статистики по параметру

5 - Добавить параметр в группу графиков на указанное место

6 - Регистрация события

7 - Регистрация сообщения

8 - Вызов группы графиков

99 - завершение работы

 

Алгоритм работы ( nezabudka.dll)

 

1.      Начало работы.

Работа осуществляется под управлением внешнего приложения.

При старте инициализируются все внутренние структуры и запускается процесс периодической архивации (функции 0 и 2).

2.      Регистрация.

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

Напротив для регистрации событий и сообщений приложение должно вызвать функции 6 или 7.

3.      Просмотр архивов.

Для просмотра архива сообщений вызывается журнал сообщений (функция 1).

Для просмотра периодического архива используются функции 3 (тренд среднечасовой), а также функции 5 и 8 (тренд секундный индивидуальный или групповой) .

4.      Завершение работы происходит при вызове функции 99.

            Аналоги (платные):

1.      "Комплексные системы"  http://www.complexsystems.ru

2.   ООО "ЧЭТА"                    http://www.cheta.ru

1. Характеристика периодического архива

 

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

            Программа периодически сохраняет данные в память компьютера. Каждые минуту содержание памяти частично сохраняется на жестком диске в базу данных FIREBIRD.

Для уменьшения размера архива значения хранятся с допустимой погрешностью(апертурой). Апертура устанавливается при настройке программы индивидуально для каждого параметра (например 0.3 % шкалы).

Во избежание неумеренного разрастания архива его размер ограничивается заданием  периода хранения (например 100 суток).

2. Принцип работы периодического архива.

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

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

  

Поэтому архив имеет блочную структуру. Блок содержит последовательность значений по одному параметру за один час ( с начала текущего часа) с периодом  равным периоду опроса (минимальный период=1 секунда).Такая структура архива позволяет использовать новый(!) эффективный способ упаковки данных для значительного уменьшения размера архива и ускорения операций чтения/записи.

Часовой блок содержит следующую информацию:

 индекс параметра, значения которого содержатся в блоке;

 дата и час  - координаты часового блока;

массив значений в упакованном виде (с учетом апертуры);

 минимальное, максимальное и среднее значение параметра за час (без учета апертуры).

Значения по параметру накапливаются в памяти в часовом блоке при каждом опросе.

В начале каждой минуты на жестоком диске фиксируется 1/N часть всех блоков, так чтобы через N минут все блоки были сохранены на диске. Таким образом, при пропаже питания могут быть потеряны данные не более чем за N минут.

По умолчанию N=20, но может принимать значения от 1 до 30.

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

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

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

 

3. Просмотр содержания периодического архива.

            Приятной особенностью системы НЕЗАБУДКА явлется тот факт, что запрвшиваемые из архива данные возвращаются не виде числового массива, а в форме графического тренда, который автоматически настраивается на особенности вызываемых параметров: шкала, уставки, единицы измерения и т.п.

            В программе предусмотрено 2 способа просмотра содержания периодического архива.

Наименование

Представление информации

Период просмотра

Количество

параметров

Примечание

1.Часовая статистика по параметру

Минимум, максимум и среднее за час. Минимум, максимум и среднее за сутки.

От 1 до 31 суток

(от 24 до 744 часов)

один

Пользователь  выбирает параметр

2. Реальные значения группы параметров

Реальные значения либо

средние значения за период 1,5,10,15,30,60

минут.

От 1 до 25 часов

От 1 до 16

Пользователь  формирует группу или выбирает из списка фиксированых

групп

  

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 24.09.2008 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
ABBYY Lingvo x6 Многоязычная Домашняя версия, электронный ключ
Microsoft 365 Apps for business (corporate)
Stimulsoft Reports.Ultimate Single License Includes one year subscription
Quest Software. TOAD Professional Edition
Quest Software. TOAD for SQL Server Xpert Edition
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Программирование на Microsoft Access
CASE-технологии
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
Реестр Windows. Секреты работы на компьютере
СУБД Oracle "с нуля"
Программирование на Visual Basic/Visual Studio и ASP/ASP.NET
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100