Библиографическое описание:

Ахметвалеев А. Ф. Программный модуль «Конструктор методик для расчета масс загрязняющих веществ» [Текст] // Современные тенденции технических наук: материалы II междунар. науч. конф. (г. Уфа, май 2013 г.). — Уфа: Лето, 2013. — С. 1-5.

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

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

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

ГОСТы, СНиПы, распоряжения, приказы и др.), актуальность которых необходимо постоянно уточнять. Поэтому для выполнения расчетов используются программные средства, автоматизирующие выполнение расчетов.

Существует большое количество утвержденных расчетных методик. Разрабатывать под каждую методику отдельную программу не эффективно, поскольку: это трудозатратно для программиста; необходимо обеспечивать взаимную работу эколога и программиста, что — дорого; на выходе получается большое количество программ, которые неудобно сопровождать.

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

Все методики разные, поэтому необходим конструктор для создания параметров и форм, для связи этих параметров, а также механизм для ввода формул.

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

Система включает в себя два модуля: конструктор форм и расчетный модуль. Конструктор форм обеспечивает визуальное проектирование формы, создание параметров методики и задание логики расчета. Расчетный модуль предназначен для выполнения расчетов по заданному алгоритму, формирования отчетов для печати и ХML-файла для межмашинного обмена данными.

Рассмотрим подробнее принцип работы программы на примере методики «Чистые мебельные заготовки». Основное окно программного модуля Конструктор форм включает панель меню, дерево методик и информационную панель (рисунок 1).

Рис. 1. Основное окно программного модуля Конструктор форм

При создании новой методики эколог заполняет общую информацию: название, вид деятельности, нормативно-правовой документ и др. Данные сохраняются в базе данных, в таблице «Методики». Даталогическая модель данных представлена на рисунке 2.

Рис. 2. Даталогическая модель базы данных

Далее создаются участвующие в расчете параметры методики (задаются название, тип, единица измерения и др.). Поля для заполнения информации о параметрах создаются и удаляются динамически. В некоторых методиках значение одного параметра зависит от выбранного значения второго параметра. Указав краткое имя главного параметра в поле «Зависимость», пользователь устанавливает зависимость между параметрами.

В панели веществ создаются образующиеся в результате расчета загрязняющие вещества (наименование вещества, код по Федеральному классификационному каталогу отходов и уточненное название) и формулы расчета (рисунок 3). Поля для ввода данных добавляются и удаляются динамически. Информация о созданных параметрах и загрязняющих веществах записываются в базу данных в таблицы «Параметры» и «Вещества» соответственно.

Рис. 3. Создание новой методики

На следующем этапе создается форма методики — с помощью панели компонентов на форму добавляются элементы (кнопки, надписи, поля ввода и вывода и др.). Для каждого элемента можно определить подпись, размер и стиль шрифта (жирность, курсив и подчеркивание). Для удобства перемещения элементов по форме предусмотрена отключающаяся сетка.

Каждый параметр, созданный на предыдущем этапе, привязывается к соответствующему компоненту формы. Т. е. выделив необходимый компонент и выбрав из списка в панели «Привязки» нужный параметр, осуществляется связь, определяющая, какой элемент формы будет отвечать за ввод/вывод значений выбранного параметра в Расчетном модуле. Все привязки отображаются списком в панели и при необходимости могут быть удалены (рисунок 4). Вся информация о форме методики сохраняется в базе данных в таблице «Формы».

Рис. 4. Создание новой формы

На следующем этапе необходимо заполнить справочники параметров, т. е. возможные значения параметров, выводящихся в расчетном модуле. Создать отдельную таблицу для каждого параметра невозможно, т. к. количество таблиц в базе данных ограничено. Поэтому в зависимости от типа параметра в базе данных предусмотрено 3 типа справочников: строковый, целочисленный и вещественный. При выборе в панели методик необходимой, формируется список параметров данной методики. Выбирая поочередно параметры, в таблицу вносятся их значения (рисунок 5).

Рис. 5. Заполнение базы данных

Порядок заполнения очень важен, если в методике существуют зависимости между параметрами. Таблицу необходимо заполнять, ставя в соответствие значению главного параметра значение зависимого, т. к. Расчетный модуль экспортирует данные из справочников построчно. Например, выбрав при расчете ель (5 строка справочник по видам древесины), в компоненте вывода плотности будет также выделено значение из 5 строки справочника по плотностям древесины (таблица 1).

Таблица 1

Показатели плотности древесины

Вид древесины

Плотность древесины, р, т/м3

Фанера и ДСП

0,8

Берёза

0,65

Бук

0,65

Дуб

0,72

Ель

0,45

Кедр

0,44

Лиственница

0,67

Сосна

0,51

В этом же окне можно редактировать ранее созданные справочники, обновляя данные в таблицах «Вещественные параметры», «Строковые параметры», «Целочисленные параметры» базы данных.

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

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

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

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

Рис. 6. Расчетный модуль

По результатам расчета программа позволяет сформировать отчет для печати, а также экспортировать результаты в XML файл для передачи в другие программы проекта.

Таким образом, время создания методики с помощью Конструктора составит приблизительно 20 минут. На разработку же отдельной программы уйдет порядка 3 месяцев.

Выполнение расчетов и формирование отчета с помощью расчетного модуля занимает 2–3 минуты. На расчет и составление отчета вручную уйдет приблизительно 2–3 часа.

Разработка системы велась в рамках проекта EcoReport компании «Центр информационных технологий».

Обсуждение

Социальные комментарии Cackle