УДК 658.512.22
ПРОГРАММНАЯ РЕАЛИзАЦИЯ МЕТЕОРОЛОГИЧЕСКОй поддержки замкнутой СИСТЕМЫ УПРАВЛЕНИЯ «ПРИРОДА-ТЕХНОГЕНИКА»
Р. И. Сольницев,
доктор техн. наук, профессор
Санкт-Петербургский государственный университет аэрокосмического приборостроения
До Суан Чо,
аспирант Санкт-Петербургский государственный электротехнический университет «ЛЭТИ»
Рассматриваются вопросы разработки программного обеспечения метеорологической поддержки замкнутой системы управления «Природа-техногеника», в том числе SQL server 2012 построения баз данных, структуры, модули программного обеспечения, интерфейсы связей. Предложены основные запросы, используемые в среде MatLab для работы с базами данных.
Ключевые слова — экология, загрязняющие вещества, программирование, метеорологическое обеспечение, базы данных, SQL-запрос.
Введение
В работе [1] были предложены способы, концепция, структура и основные подходы к построению замкнутой системы управления «Природа-техногеника» (ЗСУПТ) на базе современных аппаратно-программных комплексов, позволяющих определить решения, направленные на минимизацию не только воздействия загрязняющих веществ, но и «человеческого фактора».
В работах [2-4] изложены алгоритмы сбора, обработки, передачи метеорологической информации (МИ) в ЗСУПТ и требования к построению соответствующей базы данных (БД). При этом исходная информация поступает из стационарных станций, центров метеорологической информации районов и промзон.
Программные средства метеорологической поддержки
В данной статье рассматриваются программные средства построения БД метеорологической поддержки (МП) реализации указанных в работе [2] алгоритмов.
Средства построения БД с помощью СУБД Microsoft SQL Server 2012, которая выбрана для базы данных МП ЗСУПТ, предложены в работе [5].
Основные причины, определившие такой выбор, следующие:
— SQL Server2012 — новейшая информационная система управления БД. Помимо стандартных для любой СУБД функций, есть ряд дополнительных средств по системному анализу данных. При этом в БД могут получить доступ любые приложения;
— эта СУБД обладает легкой масштабируемостью, высоким уровнем безопасности, а также обеспечивает наилучшую производительность.
Для работы с SQL Server 2012 требуется соединение с сервером (рис. 1).
В работе [6] предложены несколько функций SQL.
На основе анализа разнообразных программных средств в качестве среды для разработки программного обеспечения подсистемы САПР МП ЗСУПТ выбрана интегрированная среда MatLab R2011b по следующим причинам:
— применение этой среды в подсистемах САПР ЗСУПТ [7];
— возможность интеграции с другими подсистемами САПР ЗСУПТ, простота подключения к базам данных.
Среда MatLab R2011b через драйверы ADODB поддерживает множество БД. Через драйвер ADODB работает встроенный в MatLab R2011b по-
-) ■ Смлниеник «риром
Maw#
SQLServer с і 7
Ъшчзвчм
ІІМО MpS4H
Проверь пеллтэсго ;Vu іш№ п*ч!ь
LUtabss* Егфге -
ДОСУАНЧО-ПЮЛС LEXPHESS •
Проверка псдл*ї«ін ML Str/tt •
H '
J Започчить плрогъ
[ Сиа**нть ] І Отмен* . Сп£чэо-д . Парвмлтвч)
■ Рис. 1. Соединение с сервером
строитель запросов к БД. С его помощью можно построить достаточно сложные запросы (таблица), создать отчет или просто просмотреть БД.
Обработка метеорологических данных проводилась в среде MatLab R2011b с помощью приложений т-файлов и s-функций. Эти функции позволяют их записать и сохранить в файле для использования в качестве встроенных функций MatLab R2011b. Вызов функций производится из т-файлов.
Для подключения к SQL Server 2012 рассматривается код в среде MatLab R2011b, написанный в т-файле:
conn = actxserver('ADODB.Connection'); conn.Open('Provider = sqloledb;Data Source=ДОСУАНЧО-ПК\ SQLEXPRESS;Initial Catalog = TEST;User Id = sa;Password = *****;');
Исходная МИ сохраняется на любом типе файла (excel, docx, ...) и поступает как «вставка» в БД.
Для решения задачи «вставки» данных в БД в среде MatLab используется указанное приложение т-файл и s-функция. Записанные коды имеют вид:
— в s-функции
function y=insertDB(year,month,day,hour,value,table)
VALUES(%d,%d,%d,%d,%d)',table,day,month,year, hour,value);
stringsql = sprintf('INSERT INTO %s VALUES(%d,%d,%d,%d,%d)\table,
year,month,day,hour, value);
disp(stringsql);
conn.Execute(stringsql);
conn.Close();
y=true;
end
— в т-файле
filename = 'C:\Users\ДоСуанЧо\Desktop\DB\T.Quang-U07.xls'; sheet = 1;
xlRange = 'A5:M35';
data=xlsread(filename,sheet,xlRange);
num_rows=size(data,1);
num_cols = size (data,2);
for i = 1:1:num_cols;
for j = 1:1:num_rows;
insertDB(2013,i,j,x,data(j,i),'P')
end
end
Структура программного обеспечения подсистемы САПР МП ЗСУПТ в среде MatLab представлена на рис. 2.
База данных МП ЗСУПТ включает следующие файлы: исходной МИ; результатов обработки; программной реализации алгоритмов автоподстройки. В каждом файле формируются таблицы в соответствии с задачами МП ЗСУПТ.
Таблица «tblHour» сохраняет исходные данные по переменным V, T0, P, W по часам. Для размещения переменных V, T0, P, W по дням или по другому отсчету времени служат другие таблицы «tblDay», «tblMonth», «tblYear» (рис. З, а).
Файлы результатов обработки МИ:
— таблицы математических ожиданий: «tblspeed_midday», «tblspeed_ midnight», «tblspeed_day», «tblspeed_month», «tblspeed_ yeas» (рис. З, б);
■ Основные запросы, используемые в среде MatLab
Запрос Описание
CREATE TABLE Создает новую базовую таблицу
DROP TABLE Удаляет базовую таблицу
ALTER TABLE Изменяет структуру существующей базовой таблицы
CREATE VIEW Добавляет новое представление
DROP VIEW Удаляет представление
CREATE INDEX Создает индекс для столбца
DROP INDEX Удаляет индекс столбца
ALTER INDEX Изменяет индекс
INSERT Добавляет новые строки в таблицы
DELETE Удаляет строки из таблиц
UPDATE Обновляет данные, существующие в таблицах
SELECT Считывает данные из таблиц
CREATE DATABASE Физически создает
CONNECT Подключает к существующей БД
Графический интерфейс пользователя
База данных МП ЗСУПТ
Блок модулей обработки
Автокорреляционные
функции
Математические
ожидания
Взаимные корреляционные функции
Условные математические ожидания
Статистические характеристики потока переноса загрязняющих веществ
Блок модулей программной реализации
Расчет законов управления автоподстройкой ПИД-регулятора с усреднением по времени (часы, сутки, месяцы, годы)
Передачи
программ
управления
автоподстройкой
ПИД-регулятора
тт
ЗСУПТ
Платформа MatLab
■ Рис. 2. Структура программного обеспечения подсистемы САПР МП ЗСУПТ
— таблицы автокорреляционных функций: «tblcorrelation_midday», «tblcorrelation_mid-night», «tblcorrelation_day», «tblcorrelation_ month», «tblcorrelation_yeas» (рис. 3, в).
Аналогично формируются таблицы взаимнокорреляционных функций, условных математических ожиданий и других характеристик скорости потока переноса загрязняющих веществ.
Файлы программной реализации алгоритмов автоподстройки ПИД-регулятора с усреднением по времени (полдень-полночь, месяцы, годы) размещаются в отдельных таблицах законов управления автоподстройкой ПИД-регулятора с усреднением по суткам, по месяцам.
Информация из БД МП ЗСУПТ отображается на экране оператора в виде рисунков, графиков, таблиц.
После запуска программного обеспечения подсистемы САПР МП ЗСУПТ происходит включение программных модулей, входящих в соответствующие блоки МП ЗСУПТ.
Блок «База данных»:
— модуль «Вставка» для заполнения таблиц в БД МИ из любых типов файлов после получения исходных метеорологических данных;
— модуль «Формирование» для формирования МИ в i-й таблице или нескольких таблицах;
формирование МИ в таблице будет выглядеть следующим образом:
SELECT y.year,m.month,d.day,h.hour,h.T_value,h.W_value,h.V_value FROM tblYEAR y
JOIN tblMonth m
ON y.IDmonth = m.IDmonth
JOIN tblDay d
ON m.IDday = d.IDday
JOIN tblHour h
ONd.IDhour = h.IDhour
— модуль «Создание» для создания новых таблиц или столбцов;
— модуль «Удаление» для удаления строки из таблиц;
— модуль «Обновление» для обновления МИ в таблице.
Блок «Обработка»:
— модуль «Вычисление» для расчетов:
• математических ожиданий, автокорреляционных функций, взаимных корреляционных функций;
• скорости потока переноса загрязняющих веществ;
— модуль «Прорисовка» — прорисовка графиков, рисунков.
б)
1Ь1сет?1айопт1с1г1 [дИ С |СЬоиг * . (Ыеот№н1.1111<1с1а у Ч И1ГЫГ *
1нш J Ьшг
^ММ|*1МЙ КА4Г Ы 1 ► г" *1 | ♦г1
■ Рис. 3. Структура таблиц БД МП ЗСУПТ
В блоке «Программатор» формируются законы управления автоподстройкой ПИД-регуля-тора в ЗСУПТ как временные процессы [2]. Здесь же осуществляется ввод закона управления автоподстройкой в контроллер ПИД-регулятора.
Результаты, полученные на этапах «Обработка» и «Программатор», сохраняются в базе данных МП ЗСУПТ.
Для работы программного обеспечения подсистемы САПР МП ЗСУПТ потребуется запуск среды MatLab R2011b, SQL Server 2012.
Системные требования к программному обеспечению для установки SQL Server 2012 и MatLab R2011b следующие.
1. Установка MatLab:
— любой процессор Intel® или AMD архитектуры x86 с поддержкой набора инструкций SSE2;
— 1024 МБ оперативной памяти (рекомендуется 2048 МБ);
— 3-4 ГБ места на жестком диске для стандартной установки (1 ГБ — для MatLab без дополнений);
— поддерживаемые операционные системы (семейства Windows): Windows XP Service Pack 3, Windows Server 2003 R2 Service Pack 2, Windows
1. Сольницев Р. И., Коршунов Г. И. Системы управления «Природа — Техногеника». - СПб.: Политехника, 2013. - 205 с.
2. Сольницев Р. И., До Суан Чо. Алгоритмизация обработки и передачи метеорологических данных в замкнутой системе управления «Природа-техно-геника» // Информационно-управляющие системы. 2013. № 3. С. 30-35.
3. До Суан Чо. Вопросы информационного обеспечения замкнутой системы управления «Природа — Техногеника»: материалы XV Междунар. конф. по мягким вычислениям и измерениям ^СМ-2012). СПб.: СПбГЭТУ «ЛЭТИ», 2012. С. 134-137.
Vista™ Service Pack 2, Windows Server 2008 Service Pack 2, Windows 7.
2. Установка SQL Server:
— Windows XP Service Pack 3, Windows Server 2003 R2 Service Pack 2, Windows Vista™ Service Pack 2, Windows Server 2008 Service Pack 2, Windows 7, Windows 8;
— минимум 4,2 ГБ свободного места на диске;
— процессор, совместимый с Intel, с частотой 1 ГГц;
— ОЗУ: минимум 512 МБ для SQL Server Express с инструментами и SQL Server, экспресс-выпуск с дополнительными службами, а также 4 ГБ для служб Reporting Services, которые устанавливаются вместе с SQL Server Express с дополнительными службами.
Заключение
Предложенные в статье средства построения базы данных для МП ЗСУПТ, а также программное обеспечение позволяют осуществлять процессы минимизации загрязняющих веществ в режиме реального времени с учетом влияния метеорологической обстановки.
4. Сольницев Р. И., До Суан Чо. Построение баз данных метеорологической информации в замкнутой системе управления «Природа-техногеника» // Программные продукты и системы. 2013. № 1. С. 125-129.
5. Карвил Б. Программирование баз данных SQL, типичные ошибки и их устранение. - М.: Рид групп, 2012. - 336 с.
6. Маркин А. В. Построение запросов и программирование на SQL: учеб. пособие / РГРТУ. - Рязань, 2008. - 312 с.
7. Сольницев Р. И., Тревгода М. А. Программное обеспечение подсистемы САПР замкнутой системы управления «Природа-техногеника» // Информаци-онно-управляющие системы. 2010. № 4. С. 34-38.