Моделирование месторождения и карьера средствами свободного геометрического ядра и шаблонов передачи веб
Системы проектирования месторождений и карьеров средствами Open Cascade. Разработка приложений в горной промышленности, геологии, контроле окружающей среды и географических баз данных. Объекты базы данных, планирование разработки открытых месторождений.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 29.04.2017 |
Размер файла | 699,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МОДЕЛИРОВАНИЕ МЕСТОРОЖДЕНИЯ И КАРЬЕРА СРЕДСТВАМИ СВОБОДНОГО ГЕОМЕТРИЧЕСКОГО ЯДРА И ШАБЛОНОВ ПЕРЕДАЧИ ВЕБ
Суханов Владимир Иванович
Уймин Антон Григорьевич
УДК 004.42:004.942: 622.1:528
UDC 004.42:004.942: 622.1:528
МОДЕЛИРОВАНИЕ МЕСТОРОЖДЕНИЯ И КАРЬЕРА СРЕДСТВАМИ СВОБОДНОГО ГЕОМЕТРИЧЕСКОГО ЯДРА И ШАБЛОНОВ ПЕРЕДАЧИ ВЕБ
MODELING OF A FIELD AND A PIT BY MEANS OF A FREE GEOMETRICAL KERNEL AND WEB TRANSMISSION TEMPLATE
Суханов Владимир Иванович
д.т.н., доцент
Sukhanov Vladimir Ivanovich
Dr.Sci.Tech., associate professor
Уймин Антон Григорьевич
аспирант
Uymin Anton Grigoryevich
postgraduate student
Уральский федеральный университет, Екатеринбург, Россия
Ural Federal University, Ekaterinburg, Russia
Приводится описание разработанной системы проектирования месторождений и карьеров средствами Open CASCADE
The description of the designed system of modeling of fields and pits is provided by means of Open CASCADE
Ключевые слова: МОДЕЛИРОВАНИЕ МЕСТОРОЖДЕНИЯ, ПРОЕКТИРОВАНИЕ КАРЬЕРА, ШАБЛОН ПЕРЕДАЧИ
Keywords: FIELD MODELLING, PIT PROJECTING, TRANSMISSION TEMPLATE
Повышение интереса к приложениям в горной промышленности, геологии, контроле окружающей среды и мобильной связи является новым вызовом в разработке географических баз данных. Современные геоинформационные системы являются замкнутыми системами, главным образом поддерживающими географические задачи в пространстве 2D. В прикладных областях, таких как геология, планирование разработки открытых месторождений, требуется моделирование и обработка 3D/4D объектов.
На территории Уральского Федерального округа располагается большое количество малых и средних предприятий, занимающихся разработкой полезных ископаемых [1]. Невозможно представить работу современного горнодобывающего предприятия без использования горно-геологических информационных систем (ГГИС), предназначенных для ввода, хранения, обработки и анализа пространственной и атрибутивной информации о месторождении и элементах карьера.
Возрастающая потребность горных предприятий с открытым способом добычи твёрдых полезных ископаемых в разработке, как решений отдельных технологических задач, так и полномасштабных горно-геологических информационных систем для решения прикладных задач на этапах проектирования, эксплуатации, консервации и погашения карьеров, вызывает необходимость разработки современной отечественной ГГИС на базе открытого программного обеспечения и веб-технологий.
Для разработки ГГИС было выбрано геометрическое ядро Open CASCADE и язык программирования Python. Средствами Python [2] рационально решать задачи быстрого прототипирования приложений из различных компонентов свободных и открытых промышленных библиотек: Open CASCADE Community Edition 3D, SALOME GEOM и SALOME SMESH, которые были разработаны компанией Open CASCADE SAS [3] (до 2000 года Matra Datavision). Технология PythonOCC является программным интерфейсом на языке Python для Open CASCADE, написанном на языке С++, содержит более 10000 классов и использует около 90% функциональности Open CASCADE. PythonOCC является кроссплатформенной средой для разработки CAD/CAE/PLM, обеспечивающей трехмерное гибридное и параметрическое моделирование, работу с топологией, обмен данными (поддержка форматов файла STEP/IGES), совместную разработку и web-сервисы, поддержку различных графических интерфейсов пользователя (wxPython, PyQt, Python-xlib). PythonOCC [4] расширяет функциональность ядра OpenCASCADE, предоставляя возможность использовать wxPython, что позволяет создавать не только графический интерфейс, но и систему обмена данных между процессами, сетевую библиотеку и множество классов для работы с различными приложениями. Компания Open CASCADE предоставляет Visual C++ проекты, которые позволяют пользователям компилировать код Open CASCADE на их платформах. Форматы экспорта данных доступны для STL, VRML и HPGL2, а также представлен Open CASCADE Application Framework для быстрой разработки приложений 3D моделирования.
В качестве базы данных для хранения геометрии рудных тел и элементов карьера была выбрана свободная реляционная система управления базами данных (СУБД) -- PostgreSQL. Также, при выборе СУБД для работы с геоиформацией, важно следовать реализации стандартов OGC [9], позволяющих интегрировать программные продукты, такие как открытый картографический сервер GeoServer, в свою систему. Так как для работы конечного приложения планировалась интеграция с данным картографическим сервером, а также ввиду отличных показателей производительности и качества программного кода, выбор был сделан в пользу СУБД PostgreSQL. Функционал PostgreSQL был расширен модулем PostGIS [10]. PostGIS является расширением объектно-реляционной СУБД PostgreSQL, предназначенным для хранения в базе данных географической информации. PostGIS включает поддержку пространственных индексов R-Tree/GiST, а также функции обработки геоданных. В разработанной системе реализовано хранение всей геометрии в PostGIS, с выборкой во временную таблицу для визуализации и анализа нужных фрагментов. Это отличает нашу систему от большинства ГГИС, в которых геометрия хранится в классических структурах точек для каждого типа бровок и контуров рудных тел с последующим созданием во временной таблице нужной для визуализации и анализа геометрии. Связь с базой данных осуществляется при помощи модуля psycopg2 посредством SQL запросов.
GeoServer является картографическим сервером с открытым исходным кодом, реализует спецификацию WFS-T (WFS-Transaction), позволяющую не только получать данные для построения на их основе карт, но также редактировать полученные данные с последующим автоматическим обновлением исходной информации на сервере через веб-интерфейс. Еще одной особенностью GeoServer является поставляемая вместе с ним визуальная система управления файлами настроек и описания данных для проектов GeoServer. Эта система реализована как веб-интерфейс и предоставляет пользователю возможность интерактивного создания и изменения разрабатываемого картографического ресурса. Web-интерфейс - наиболее удобный и быстрый способ управления по сравнению с ручным изменением map-файла проекта, как это реализовано в MapServer. Разработан сервлет, размещенный на том же сервлет-контейнере, что и картографический сервер GeoServer, что позволяет сократить потребление ресурсов и упростить обслуживание и использование системы конечным пользователем.
Для проверки и отладки веб-интерфейса сервлета были использованы браузеры Google Chrome, Firefox и Opera. Использование сервлет-контейнеров позволило создать клиент-серверную архитектуру по типу "сервлет-контейнер - браузер пользователя" и легко интегрировать картографический сервер GeoServer в картографический сервис при помощи библиотеки OpenLayers, также входящей в GeoServer. На рисунке 1 приведен скриншот экранной формы сгенерированной веб-страницы, в котором отображается некая область карьера. На рисунке 1 приведена таблица объектов базы данных с возможностью их редактирования. Недостатком работы через веб-интерфейс является невозможность просмотра других проекций карьера. На данном этапе у пользователя есть возможность работы только с горизонтальной проекцией.
Рисунок 1 - Скриншот экранной формы
Связка "База данных - Картографический сервер - WMS - Браузер пользователя" полностью поддерживается картографическим сервером GeoServer, что позволяет минимизировать затраты на создание промежуточных опорных точек.
Архитектура приложения допускает размещение компонентов системы на разных серверах, что позволяет построить высокопроизводительную и отказоустойчивую систему, разместив ее компоненты в архитектуре облака. Основные компоненты системы, такие как геоинформационная система проектирования, картографический сервер и сервер системы управления базами данных могут быть установлены как на одном компьютере, так и на разных компьютерах, в том числе и находиться в вычислительном облаке, позволяя строить высоконадежную систему, не задумываясь об ее аппаратном обеспечении.
В связи со сложившейся в России ситуацией, самыми распространенными ГИС для разработки месторождения открытым способом являются проприетарные Gemcom Surpac[11] и GeoMine[12], которые не обладают функционалом картографической системы для удаленной работы с помощью кроссбраузерных инструментов, в то время как предлагаемая система позволяет работать в полевых условиях, в том числе и с планшетного компьютера. проектирование месторождение карьер open
ГГИС для открытой разработки должна хранить большое число объектов различной природы. Основные объекты БД приведены в таблице.
Таблица - ОБЪЕКТЫ БАЗЫ ДАННЫХ И ИХ ХАРАКТЕРИСТИКИ
Объект |
Характеристики |
|
Координатная система |
Идентификатор классификатора перевода систем геометрических координат, описание координатной системы. |
|
Типы линий |
Название типа, описание типа линий. |
|
Цвет |
Название цвета, уровни красного, синего и зеленого. |
|
Горизонт |
Проектная отметка, высота уступа, описание горизонта. |
|
Сорт тела |
Имя, удельный вес, цвет линии границы, тип линии границы, толщина линии границы, цвет заливки, описание сорта тел. |
|
Скважины |
Горизонт, тип (разведочная, эксплуатационная, взрывная), координатная система, координаты устья/подошвы на горизонте (x,y,z) или геометрия точка/окружность, состав (стратиграфия, список сортов -- внешняя таблица характеристик). |
|
Характеристика скважины |
Тип скважины, параметр, значение. |
|
Типы бровок |
Название типа бровок, тип линии, цвет, толщина. |
|
Бровки |
Горизонт, тип бровки, результирующая линия (объединение текущих фрагментов). |
|
Рудные тела |
Горизонт, высота слоя, сорт, результирующая линия (объединение текущих фрагментов). |
Из состава объектов и их характеристик следует, что геоинформационная система должна иметь возможность как моделирования месторождения и карьера, так и выполнения технологических операций по планированию горных работ, корректировки элементов карьерного пространства по данным съемки, подготовки буровзрывных и других работ.
Моделью геологического строения месторождения является совокупность рудных тел. Тело характеризуется координатами вершин замкнутого полигона по подошве уступа и высотой. Техногенные образования - бровки уступов, съезды транспорта, контуры прирезок и другие, задаются 3-D полилиниями. Основной инструмент задания геометрии - это полилиния. Все изменения геометрии локальны и требуют сохранения в базе данных. Если у пользователя есть несохраненные изменения, то перед выходом он будет предупрежден. Полилинии могут задаваться как при помощи клика левой кнопкой мыши на экране, так и вводом координат вершин с клавиатуры.
Сорт рудного тела задается в опциях на этапе задания геометрии и может быть позже изменен, в том числе и через веб-интерфейс. Цвет тел на экране определяется заданием свойств сорта в базе данных. Построение тел осуществляется созданием призмы на основе замкнутой полилинии контура подошвы.
При проектировании нового карьера построение бровок возможно методом подобия на расстоянии, заданном опцией "ширина площадки". Цвет бровок на экране соответствует цвету, определённому для данного типа бровки в базе данных. Тип бровки задается в опциях на этапе задания геометрии и может быть позже изменен через веб-интерфейс. При построении планируемых бровок уступов выполняется скругление заданным радиусом для создания плавных изгибов борта. В системе реализованы инструменты для работы с основными элементами карьеров: борта, тела, бровки, съезды, скважины и т.д. Реализованы инструменты формирования прирезок и синхронного подвигания всего борта для заданной прирезки на нижнем горизонте.
Программа была подвергнута оптимизации под эргономику широкоформатных мониторов. С этой целью интерфейс конечного приложения (геоинформационной системы) спроектирован для дисплеев с соотношением сторон 16:9 и 16:10. По вертикали максимальная область выделена непосредственно для модели карьера. Горизонтально-занимаемое пространство используется с максимальной эффективностью для размещения меню и дополнительных проекций модели карьера. Для оптимизации вертикального пространства используются панели управления, состоящие из иконок и панели меню, состоящей из разворачивающихся пунктов, а также однострочной панели состояния. В свою очередь, пользовательское меню, состоящее из большого количества кнопок, имеющих текстовую надпись и панель вкладок, для навигации размещены в левой области окна. На рисунке 2 показано главное окно приложения.
Рисунок 2 - Интерфейс программы
В настоящее время разработанная ГГИС позволяет решать основные задачи моделирования месторождений и карьеров добычи полезных ископаемых. Разработаны основные программные модули для работы с такими объектами, как бровки, борта, рудные тела, съезды и т.д. Для выбора направления развития горных работ есть возможность оценки таблицы горно-геометрического анализа для отдельной прирезки на любом горизонте и для подвигания всего борта. Разработан веб-модуль работы с моделью карьера, реализующий высокоэффективный обмен с базой данных на основе шаблонов передачи данных в сети, в том числе облачной архитектуры. Использование шаблонов позволило сократить объем пересылаемой информации между сервером ГГИС и GeoServer, что увеличило быстродействие системы в режиме доступа через веб-интерфейс.
Для развертывания системы требуются следующие пакеты:
- язык программирования Python 2.7;
- геометрическое ядро OCE 0.8;
- PythonOCC 0.5;
- СУБД PostgreSQL 9.0 с расширениями PostGIS 1.3.4;
- пакет для доступа к БД -- Psycopg2-2.0.14;
- графическая библиотека -- wxPython 2.8;
- GeoServer 2.1.4.
Список источников
1 Краткий обзор программного обеспечения горно-геологических информационных систем [Электронный ресурс]. -- Режим доступа: http://www.geokurs.com/docuwiki/doku.php?id=concept:part2 Дата обращения: 23.06.2012
2 Python [Электронный ресурс]. -- Режим доступа: http://www.python.org/doc/ Дата обращения: 21.06.2012
3 OpenCascade Products & Services [Электронный ресурс]. -- Режим доступа: http://www.opencascade.com/services/ Дата обращения: 20.06.2012
4 Python OCC [Электронный ресурс]. -- Режим доступа: http://www.pythonocc.org/about/ Дата обращения: 20.06.2012
5 ShapeManager [Электронный ресурс]. -- Режим доступа: http://en.wikipedia.org/wiki/ShapeManager Дата обращения: 20.06.2012
6 Parasolid [Электронный ресурс]. -- Режим доступа: http://ru.wikipedia.org/wiki/Parasolid Дата обращения: 22.06.2012
7 8 Причин выбрать CADKEY [Электронный ресурс]. -- Режим доступа: http://www.cadkey.lv/products/cadkey/8reason_rus.html Дата обращения: 23.06.2012
8 Обзор геометрических ядер [Электронный ресурс]. -- Режим доступа: http://www.cad.dp.ua/obzors/karnel.php Дата обращения: 20.06.2012
9 OpenGIS [Электронный ресурс]. -- Режим доступа: http://www.opengis.com/ Дата обращения: 23.06.2012
10 PostGIS [Электронный ресурс]. -- Режим доступа: http://postgis.refractions.net/ Дата обращения: 21.06.2012
11 Gemcom Surpac [Электронный ресурс]. -- Режим доступа: http://www.gemcomsoftware.com/products/Surpac Дата обращения: 22.06.2012
12 GeoMineISR [Электронный ресурс]. -- Режим доступа: http://www.geomineisr.com/ Дата обращения: 25.06.2012
Работа поддерживается Министерством образования и науки Российской Федерации, ГК № 14.514.11.4002
Размещено на Allbest.ru
Подобные документы
Изучение технологии разработки базы данных, создания таблиц, простых и составных форм для ввода, редактирования и просмотра данных, хранимых в таблицах. Проектирование информационной системы "Кафедра" средствами СУБД Access, с созданием форм отчетов.
курсовая работа [5,9 M], добавлен 12.05.2012Построение информационно-логической модели базы данных. Корректировка данных средствами запросов. Проектирование алгоритмов обработки данных. Реализация пользовательского интерфейса средствами форм. Разработка запросов для корректировки и выборки данных.
курсовая работа [680,9 K], добавлен 19.10.2010Разработка базы данных с информацией о сотрудниках, товарах, со справочником типов товаров средствами системы управления базами данных MySQL с помощью SQL-запросов. Разработка инфологической модели предметной области. Структура таблиц, полей базы данных.
контрольная работа [648,7 K], добавлен 13.04.2012Разработка информационной и инфологической модели базы данных на тему "Командировка". Выбор модели данных и составление ее концептуальной схемы. Получение доступа к БД средствами Delphi, разработка пользовательского интерфейса. Реализация SQL-запросов.
реферат [1,2 M], добавлен 16.06.2009Базы данных и системы управления базами данных. Структура простейшей базы данных, свойства полей. Понятие языка SQL. Проектирование баз данных, режимы работы, объекты. СУБД Microsoft Access. Создание базы данных "Электротовары" средствами Visual FoxPro.
курсовая работа [5,7 M], добавлен 29.04.2014- Создание базы данных автомобилестроительного предприятия в виде настольного приложения на языке Java
Разработка логической схемы базы данных автомобилестроительного предприятия. Инфологическое моделирование системы. Создание графического интерфейса пользователя для базы данных средствами языка программирования Java. Тестирование программных средств.
курсовая работа [2,3 M], добавлен 16.12.2013 Разработка базы данных организации, которая занимается ремонтом автомобилей и реализована в виде программного продукта. Моделирование структуры баз данных с использованием CASE-средств средствами языка SQL. Разработка логической и физической модели базы.
курсовая работа [2,3 M], добавлен 21.03.2010Информационные задачи и круг пользователей системы. Выработка требований и ограничений. Разработка проекта базы данных. Программная реализация проекта базы данных. Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных.
курсовая работа [706,2 K], добавлен 17.06.2012Построение концептуальной (инфологической) модели базы данных. Выбор языка и среды программирования, требования к клиентскому приложению. Выбор шаблонов проектирования, UML диаграмма классов с учетом выбранных шаблонов. Тестирование слайдера "Slick".
дипломная работа [2,5 M], добавлен 10.07.2017Сведения о платформе Microsoft.NET Framework, способы и методы доступа к базам данных и системам управления базами данных, особенности проектирования и программирования баз данных средствами выше упомянутой платформы. Спроектировано приложение "Articles".
курсовая работа [5,9 M], добавлен 20.03.2011