АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ СИСТЕМ
ОЧИСТКИ ВОДЫ
А.В. Панков, А.А. Ясырев
В данной работе рассмотрено создание автоматизированной системы, направленной на создание полной базы данных по физико-техническим характеристикам фильтров, о состоянии воды в различных регионах. Данная система позволяет осуществлять быстрый подбор наиболее подходящей структуры системы очистки, на основе которой формируется проект системы.
Введение
Согласно статистическим данным, четверть населения города Санкт-Петербург пользуются водой, очищенной при помощи дополнительных фильтров. В этом отчасти повинен тот факт, что мониторинг качества воды осуществляется водоканалом на выходе из водоподготовительных сооружений [3], но по мере протекания по трубам ее показатели ухудшаются в связи с плохим качеством трубопровода. Степень возникающего в них загрязнения индивидуальна в каждом конкретном случае и может варьироваться в значительных пределах. Поэтому особенно важно обеспечить оперативный сбор, анализ и обработку информации об экологическом состоянии воды в разных местах и осуществление подбора оптимальной системы очистки, обеспечивающей необходимый уровень качества воды для каждого конкретного случая. Это позволит населению существенно оберегать свое здоровье и здоровье будущего поколения, причем с достижением максимального эффекта. Актуальность разработки устройств финишной обработки воды определяется тем, что проблему получения доброкачественной питьевой воды без устройств финишной обработки сегодня решить практически невозможно. Существующий большой объем информации по воде, которую необходимо очищать, и большой объем информации по приборам, которые возможно использовать, позволяет проводить аналитические исследования. Но использование ручного труда для подобных целей малоэффективно, так как сопровождается долгим процессом подбора информации по каждому индивидуальному случаю. В то же время использование в данной деятельности автоматизированных систем позволяет многократно повысить производительность труда, захватить большее число аспектов каждой конкретной ситуации.
Выбор среды разработки
Из СУБД, работающих под операционными системами группы Win 32, для данного проекта выбрана система Borland Delphi 7 и MS Access 2000.
СУБД MS Access2000 была выбрана по следующим причинам. В этой системе имеется поддержка языка SQL, удобная система хранения данных (таблица с данными, индексы, запросы, формы для ввода-вывода данных хранятся в одном файле). Система отличается простотой и удобством создания таблиц, включающих в себя большое разнообразие типов данных [2].
Система Borland Delphi 7 была выбрана по следующим причинам. Система предназначена для работы под операционными системами MS Windows (Win32), из всех систем управления базами данных данная система обладает наибольшими возможностями. Так как система - открытая, с возможностью подключения дополнительных модулей, возможность использования готовых модулей различных производителей значительно упростит задачу по разработке системы. Наличие компонент, реализующих интерфейс с механизмом Ole Automation, интерфейс OLE DB, интерфейс ADO, упрощает разработку системы взаимодействия с другими приложениями Windows. Развитые средства разработки самого пакета Borland Delphi 7 позволяют в случае необходимости разрабатывать дополнительные модули средствами других языков. Система не предъ-
являет чрезмерных требований к ПК (как Oracle) [1], что позволяет ее использовать на самых разнообразных компьютерах.
Связующим интерфейсом между программой, разработанной в Borland Delphi 7, и файлом базы данных MS Access2000 (*.mdb) является ADO (Active Data Objects) - это новый высокоуровневый компонент технологии доступа к данным от Microsoft. ADO -более новая технология, чем ODBC, она работает через интерфейс OLE DB. ADO позволяет работать с файлом MS Access2000 без наличия самой СУБД MSAccess, что позволяет создавать полноценные локальные базы данных, основанные на архитектуре клиент-сервер, имеющие возможность работы без приложения сервера (MS Access) [1].
Часть функций программы выполняется с использованием приложений Office. В частности, подсистема анализа активно использует MS Excel, а MS Word был выбран для формирования выходной документации. Приложения Office поставляют сервера COM, которые предоставляют интерфейс доступа к приложению и его объектам. Благодаря этому разработчик в среде Delphi имеет возможность управлять сервером, используя специально для этого имеющиеся средства Delphi.
Рис.1. Инициализация пакета прикладных программ
При запуске системы осуществляется начальная инициализация ее параметров. При этом инициализируются переменные состояния системы, которые обеспечивают механизм взаимодействия объектов. Ключевыми переменными состояния системы яв-
ляются переменные BDName (путь к базе данных), Cstring(строка установления связи с сервером). Кроме того, осуществляется инициализация серверов Ole Automation для основных типов данных, используемых в базе данных в целях ускорения процесса взаимодействия с ними. Также в процессе начальной инициализации создается главное окно программы, которое содержит пользовательское меню, панель инструментов, окно дерева объектов и статусную строку. Схема инициализации представлена на рис.1.
Взаимодействие модулей системы между собой
Модули, составляющие систему, делятся на две группы - модули анализа данных и модули занесения и вывода данных, поступающих от пользователя в базы данных системы.
Модуль занесения и вывода данных, или редактор базы данных, представляет собой программу, которая принимает данные от пользователя, введенные в специальные экранные формы и окна диалога, сохраняет их в базах данных системы в соответствии с заранее заданной структурой и выводит в отчеты MSWord. После занесения данных в базу этими данными могут пользоваться различные модули анализа. Для определения того, с какими, собственно, данными они работают, существуют служебные базы описания баз данных. В результате работы модулей анализа могут появляться различные новые данные, которые также сохраняются в базе данных системы для их дальнейшего использования.
Взаимодействие объектов подсистемы между собой
Объекты, составляющие подсистему, делятся на две группы - отображаемые и не-отображаемые объекты.
Отображаемые объекты - это те объекты, которые пользователь непосредственно видит на мониторе и в окнах программы. Такими объектами являются, например, основное окно программы (TMainForm), содержащее главное меню программы и иерархическую модель структуры базы данных, окна, отображающие интерфейс соответствующих таблиц. Отображаемые объекты могут являться так называемыми «контейнерами», т.е. содержать другие отображаемые объекты. Например, объект TMainForm является контейнером и содержит такие объекты, как пользовательское меню (TMainMenu), дерево объектов (TTreeView) и т.д. В свою очередь, эти объекты могут также являться контейнерами: объект TMainMenu содержит комплекс объектов -пунктов меню (TMenuItem). Формы приложения принадлежат к объектам класса TForm, кнопки - к объектам класса TButton. Визуальное отображение таблиц осуществляется с помощью объектов класса TDBGrid, также в интерфейсе программы используются объекты классов TDBMemo, TDBEdit, TDBNavigator, TTreeView и др. [1]. Неотображаемые объекты - объекты, не видимые пользователю и осуществляющие служебные функции. К ним относятся компоненты, осуществляющие доступ к файлу базы данных и работу с ним, подключение к COM-серверам Word и Excel. Работу с базой данных осуществляет компоненты класса TADOTable и TADOConnection. Работа с Word и Excel осуществляется с помощью компонентов класса TWordApplication, TWordDocument, TExcelApplication и TexcelWorkbook [1].
Как отображаемые, так и неотображаемые объекты взаимодействуют между собой и с пользователем посредством механизма событий.
В случае возникновения каких-либо событий (например, нажатие клавиши пользоватем) система определяет объект, отвечающий за реакцию на это событие, и сообщает ему о необходимости осуществления тех или иных действий.
Заключение
В работе осуществлено создание системы, направленной на создание полной базы данных по устройствам финишной очистки воды. В ней находятся физико-технические характеристики фильтров, информация о производителях фильтров и комплектующих, протоколы исследования воды в регионах и протоколы испытаний фильтров, а также материал в различных форматах программного обеспечения, работающего под Windows. Аналитическая часть позволяет обеспечить быстрый подбор наиболее подходящей структуры системы очистки, на основе которой формируется проект системы. В результате обеспечивается оптимальная по скорости и качеству работа по упорядочиванию, хранению и редактированию данных и по обслуживанию клиентов. Таким образом, внедрение этой разработки может послужить улучшению состояния здоровья населения и уменьшить последствия воздействия вредных экологических фактсИНиличие интерфейса внешних модулей и поддержки механизма Ole Automation и ADO дает возможность взаимодействия программы с продуктами других разработчиков, которые могут обеспечить расширение функциональности системы без изучения другими разработчиками ее внутренней структуры.
Литература
1. Фаронов В.Н. Программирование баз данных в Delphi 6. СПб: Питер, 2003.
2. Дубнов П.Ю. Access 2000. Проектирование баз данных. М.: ДМК, 2000.
3. http://www.geizer.ru