БЛОЧНОЕ ПРОГРАММИРОВАНИЕ СЛОЖНЫХ СИСТЕМ

Научная статья
Выпуск: № 2 (9), 2013
Опубликована:
08.03.2013
PDF

       Бейсембаев К.М. 1, Курманов С.Т. 2,  Шманов М.Н. 3,  Шащянова М.Б.4, Рахимова А.5

1 д.т.н., чл.-корр. РАЕ, 3к.т.н., доц.,4 к.т.н., доц. Карагандинский государственный технический университет,

г. Караганда, р. Казахстан

БЛОЧНОЕ ПРОГРАММИРОВАНИЕ СЛОЖНЫХ СИСТЕМ

Анотация

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

Ключевые слова: система, объект, процесс, модель, напряжение

Key words: object, process, system, model,  stress.

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

Особенности создания модели. Рассмотрим модель сложной системы на примере задачи геомеханики, когда  технические средства забоев взаимодействуют с помощью процессов с горным массивом. Задачей моделирования в этом случае является создание примитивов сложной системы состоящей из горного массива, объёмом 1000мХ200мХ500м который может содержать слои пород с различными физикомеханическими свойствами пересечёнными трещинами, массив имеет выработки (полости) для работ: лава длиной  до 200 м. с оборудованием выемки угля и крепью для удержания пород от обрушения над зоной работ. Обычно секция крепи имеет ширину 1, 5 м и устанавливается фронтально, так что около 150 секций составляют лаву. Две выработки перпендикулярны лаве и расположены по краям, предназначены для вентиляции лавы и отгрузки угля вынимаемого в лаве. Секции крепи - сложные самопередвигающиеся конструкции для защиты лавы от пород, имеющие электрогидрооборудование на основе автоматизированного компьютерного управления. Очевидно, что моделируемая система одна из самых сложных по критериям программирования и принципы их создания должны быть общими для любой сложной системы и в частности для комплекса нефте-трубопроводов [1].  Для создания моделей следует выполнить  [1, 2,3]:

  1. выделение самостоятельных  (независимых) объектов и процессов, с помощью которых они взаимодействуют или изменяют своё состояние;
  2. рассмотрение функциональных свойств объектов и процессов и их дифференцирование с возможностью применения к ним методик моделирования;
  3. разработка объектов в отдельные модели;
  4. разработка процессов и методов их применение с одним или группой объектов;

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

Рисунок 1 – Дифференциация задачи на участки с объектами и процессами в 3D - модели  геомеханики:

А) 1 – забой с примитивами оборудования; 2 – выработанное пространство с обрушенными породами;  3- последовательность линейных блоков; 4- основной блок (сопряжение); 5- выработка на сопряжении

Б) Примитивы оборудования (крепь) в забое и напряжения в элементах крепи и породе (увеличено)

например, сопряжение забоев с остальным горным массивом. Поэтому различаем несколько участков проектирования. Один, из которых базовый, а другие линейные (т.е. повторяющиеся). При этом между линейными участками могут неоднократно врезаться базовые, отражающие факт возможного воздействия интенсивного горного давления от массива повышенной мощности, например, при преодолении гористого участка местности. Структура международных пакетов автопроектирования на основе конечно - элементных технологий предполагает наличие мощного языка объектно-ориентированного (визуального) программирования (ООП). Это, а также факт того, что стандарт предусматривает возможности управления извне, например, но основе ООП типа C++, Delphi VB позволяет строить программы проектирования с соединением участков внутри самого приложения (Ansys, SolidWorks, NASTRAN и др.), причем линейные участки строятся на основе копирования и переноса на заданный шаг, с возможностью внесения внутри каждого из них объектных и процессных блоков, уточняющих и различающих в определенных рамках их свойства. Если в данном случае в блоках объектов строится геометрия, описываются основные свойства материала, то в процессных описываются переменные характеристики, условия проявления трещиноватости и т.п. В тоже время объектные блоки могут дифференцироваться:

1. По сложности геометрии наличием вставок из различного материала (породы, бетон, металл);

2. По описанию линейного участка: размеры полости для размещения оборудования, по форме забоя,  свойствам пород и угля у забоя с учётом дезинтеграции пород, и т.д.;

3.  По описанию элементов оборудования на линейных участках (силовые характеристики и геометрические параметры крепи);

4.  По характеру контакта элементов оборудования между собой и породами;       

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

Особенности испытания модели, результаты. Возможности модели и порядок  испытаний её блоков как элементов сложной системы [2] представлены на рисунке 2.

Рисунок 2 -   Испытания примитивов и возможности 3d - модели: А - линейный блок;  Б - Основной блок (сопряжение); В- напряжения у вентиляционной  выработки на удалении от лавы; Г - Влияние трения верхняка примитива крепи  на взаимодействие с кровлей под действием контактных напряжений

Каждый блок испытывается по отдельности, включая испытания примитива крепи в линейном блоке. Применение тех или иных блоков определяется наличием компьютеров для автопроектирования и выполнения расчётов или возможностями подсоединения к серверам,  суперкомпьютерам при работе через сети. При этом учитывается назначение расчётов и лимиты времени на их выполнение:  для исследовательских целей (требования к быстроте расчёта нежёсткие), для управления работами в режиме реального времени. В последнем случае нормативы времени резко снижаются и составляют несколько секунд, например, при передвижке крепи с автоматическим выбором способа передвижения. На основе компьютеров имеющих массовое использование в Республике такие расчеты ведутся без распараллеливания (не применяется параллельно программирование)  и занимают от 20 до 60 минут. А при усложнении задач, время расчета еще более возрастает. Применение суперкомпьютеров и параллельное программирование задач позволит сократить время расчета до норматива в 0,5 -1 мин, что пригодно для частичного режима управления в реальном режиме времени, когда один расчёт выполняется для группы передвигаемых секций, а не для каждой в отдельности. В соответствии с реализацией решения задач на основе конечно-элементных технологий проектирование распадается на два этапа:

- геометрическое проектирование с вводом необходимых данных и условий функционирования системы;

- построение твёрдотельной модели, включая замену реальной конструкции сеточной.

Второй этап осложнён тем, что сетка в современных пакетах строится в целом для собранной из объектов системы, что сопряжено с выбором такой системы, когда присваемые  номера последовательно строящимся геометрическим элементам удается. Поскольку перечисленные пакеты  производятся за рубежом и по основным программным блокам представляют собой "черный ящик". Это существенно усложняет создание автоматизированных систем проектирования - участки приходится строить индивидуально. следуют  заранее известному алгоритму, что не всегда Поэтому при производстве фундаментальных исследований по управлению недрами при производстве подземных работ объёмы программного обеспечения в авторском исполнении существенно увеличиваются.     В соответствии с [2] представленная схема модели эффективна для движущегося забоя, а, значит, с постоянным учётом разрушения объектов расчёта (пород, машин). Поэтому для учёта разрушения и построения траекторий трещин требуются особые методические приёмы для управления построением конечно-элементных сеток в 3D моделях. Так, на рис.3 представлена конечно-элементная схема для воздействия на массив с обнажением квадратного и круглого отверстия, а также вектора главных напряжений, по которым в соответствии с [1] прогнозируется образование  трещин, как следует из рисунка картина векторов напряжений (как и самих напряжений) на рис.3а симметрична относительно средней вертикальной оси.

Рисунок 3- Характер изменения направлений трещин при отсутствии полного контроля построения сетки в ав­томатизированных режимах расчёта: а) симметрич­ные траектории; б) резкое нарушение симметричности

В то же время, несмотря на применёние одних и тех же  методов моделирования, эта картина для правой части модели с квадратным отверстием резко нарушилась (рис. 3б), (направления изменились в сторону верхней гори-зонтальной плоскости), что определит и неадекватный характер расчётного разрушения массива. Это связано с плохо заметными неточностями построения сетки слева и справа соответствующим процессором, что требует применения специальных мер при решении фундаментальных задач. Заметим, что при создании программного обеспечения избежать ошибок даже при изощрённом контроле не удаётся и это обычно касается ошибок относимых к краевым, т.е. проявляющимся при приближении решения к зонам, где эффект от них резко возрастает [4,5]. Например, ошибка качественно влияет на точность решения  также как  небольшая трещина на изменение напряжений и траекторию трещины. Если она расположена вдали от краевых зон или зон вызывающих концентрацию напряжений, то её влияние незначительно, но с приближением  к ним, в результате эффекта  их взаимодействия с трещиной, напряжения могут измениться скачком, возможно и резкое изменение траектории трещины. Это снижает эффективность прогнозирования и особенно если расчётный пакет не авторский и проектант не "чувствует" некорректность результата или того, где она может проявиться. Безопасность программ для таких систем в увеличении доли авторского кода. Причём это касается не только используемых программ созданных за рубежом, но и в одном коллективе, если имеется текучесть кадров или при  реанимации когда - то замороженных проектов. Учитывая, что в современных условиях существенно увеличивается количество частные компании разрабатывающие программы для сложных систем,  всё большую роль играет недостаток в системной организации разработки и хранения программ и результатов их испытаний как сложных систем. Они должны создаваться и храниться в логике единства структуры для которой создаётся программа, в логике конструктивной и функциональной связи её узлов, подузлов и деталей в пирамиде многомерной классификации специализированной базы данных, при условии разработки всех модулей программы как элементов базы в рамках алгоритма качественно общего для них  [5-6].

Литература

   1. Бейсембаев К.М., Курманов С.Т. , Шманов М.Н., Блочное проектирование объектов и процессов для компьютерных моделей // Труды Международного симпозиума «Информационно-коммуникационные технологии в индустрии, образовании и науке», 22-23 ноября 2012 г., часть 3, Караганда 2012, с 48-50

    2. Бейсембаев К.М., Жакенов С.А., Жетесов С.С., Демищук И.Н. , Шманов М.Н., Тир И.Д., Малыбаев Н.С. // Журнал  «Уголь», Москва, № 4, с.69 -71   

    3. Годердзишвили Г.М., Ковалев  В.В., Романюк В.А. Метод  статистического контроля правильности программ // Программирование  2, Москва: Изд-во «Наука», 1988. - c.54-61.

   4.   Бейсембаев К.М. Когай Г.Д., Шащанова М.Б., Рахимова А. // Современные проблемы науки и образования. – 2012. – № 6; URL: www.science-education.ru/106-7471 (дата обращения 29.01.2013)

   5.   Бейсембаев К.М., Шащанова М.Б.// Основы системного анализа в базах данных, Караганды, Болашак-Баспа, 2008, 208 с.

Список литературы

  • Бейсембаев К.М., Курманов С.Т. , Шманов М.Н., Блочное проектирование объектов и процессов для компьютерных моделей // Труды Международного симпозиума «Информационно-коммуникационные технологии в индустрии, образовании и науке», 22-23 ноября 2012 г., часть 3, Караганда 2012, с 48-50

  • Бейсембаев К.М., Жакенов С.А., Жетесов С.С., Демищук И.Н. , Шманов М.Н., Тир И.Д., Малыбаев Н.С. // Журнал «Уголь», Москва, № 4, с.69 -71

  • Годердзишвили Г.М., Ковалев В.В., Романюк В.А. Метод статистического контроля правильности программ // Программирование 2, Москва: Изд-во «Наука», 1988. - c.54-61.

  • Бейсембаев К.М. Когай Г.Д., Шащанова М.Б., Рахимова А. // Современные проблемы науки и образования. – 2012. – № 6; URL: www.science-education.ru/106-7471 (дата обращения 29.01.2013)

  • Бейсембаев К.М., Шащанова М.Б.// Основы системного анализа в базах данных, Караганды, Болашак-Баспа, 2008, 208 с.