+4

Использование выражений в Оптимизаторе карьера

anonymous 5 years ago in Micromine / Mining updated by Denis Malofeev 1 month ago 13


Всем привет!


Хочу поделиться информацией об использовании выражений в Оптимизаторе карьера. Наверняка многие обращали внимание на символ fx в полях при настройке параметров оптимизации или самой оптимизации, а кто-то пробовал ее пользоваться. Возможно, кто-то уже использовал эту функцию, но не знает полный список ее возможностей.


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



Принцип выражений заключается в следующем:


1.Процесс оценивает выражение в столбце ‘Условие’, начиная сверху и доходя до первого значения TRUE.

2.Если условии TRUE (истина), тогда соответствующее выражение будет рассчитано и присвоено вычисляемому параметру.

3.Если все условия FALSE (ложь), тогда будет использовано значение из обычного поля ввода.

Анализатор выражений имеет оператор условия ‘if’. Он имеет следующий синтаксис:

If<выражение условия> then<выражение_true> else<выражение_false> fi

В отличие от большинства языков программирования, анализатор выражений относится к оператору ‘if’, как к оператору, который должен иметь результат, поэтому все части оператора обязательны.

<выражение условия> оценивается в первую очередь. Эта оценка использует стандартные правила ввода, после чего результат конвертируется в логический.

Если выражение, получило значение TRUE, тогда далее будет рассчитано <выражение_true>, в ином случае будет рассчитано <выражение_false>.

Значение и тип результата оператора ‘if’ принимает тип либо <выражение_true> либо <выражение_false>.

Обратите внимание, что ‘fi’, использованное в конце, обозначает конец оператора ‘if’.

Можно использовать оператор ‘if’ следующим образом:

ПКЗД + if ИЗВЛЕЧЕНИЕ > 0.5 then ПКЗД*2 else 0 fi

Иными словами, если ИЗВЛЕЧЕНИЕ больше чем 0.5, тогда к ПКЗД прибавить ПКЗД*2, в ином случае прибавить 0 (ничего).



Важно понимать, что все части оператора 'if' являются обязательными. В том числе и знак 'fi', необходимый для обозначения конца вашего условного оператора.

В случае оптимизации карьера, можно задать следующие переменные:


Переменная

Значение

ALWAYS

Логическое TRUE

COORD_X

X координата текущего обрабатываемого блока

COORD_Y

Y координата текущего обрабатываемого блока

COORD_Z

Z координата текущего обрабатываемого блока

“ИМЯ ПОЛЯ”

Значение, основанное на записи в БМ

[Поле Модели]

Значение, являющиеся полем БМ

PERIOD=n

Период (n) отработки карьера


А также можно использовать следующие функции:

Функция

Описание

DEFINED(x)

X– переменная. Проверка на определение (было ли присвоено ей значение)

SIN(x)

Синус. Х указывается в градусах

COS(x)

Косинус. Х указывается в градусах

TAN(x)

Тангенс. Х указывается в градусах

ASIN(x)

Арксинус. Возвращает значение в градусах

ACOS(x)

Арккосинус. Возвращает значение в градусах

ATAN(x)

Арктангенс. Возвращает значение в градусах

LN(x)

Натуральный логарифм

LG(x)

Десятичный логарифм


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

Например, в выражении "5.0"+5 результатом будет "5.05" (это называется конкатенацией). А выражении 5.0+"5" результат будет 10.

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

Оператор

Эффект на числа

Эффект на строку(str)

Эффект на логические выражения

+

Сложение

Конкатенация

Логическое ИЛИ

-

Вычитание

Неверная операция

Логическое ИЛИ наоборот

*

Умножение

Неверная операция

Логическое И

/

Деление

Неверная операция

Логическое И наоборот

Ниже также описаны операторы логики и сравнения

Символ

Оператор

>

Больше чем

<

Меньше чем

>=

Больше или равно

<=

Меньше или равно

=

Равно

!=

Неравно

Знак

Оператор

&

Логическое И

|

Логическое ИЛИ

!

Логическое НЕ

Ниже представлены основные примеры использования выражений Оптимизатора:

- Параметр производительности фабрики, изменяющийся в зависимости от Периода:


- Параметр Затраты на добычу руды, ссылающийся на поле в блочной модели. Условие ALWAYS означает что условие всегда истинное (TRUE), а значит данные по затратам будут браться из поля БМ, в данном случае Ore mining cost.

Кстати, если какие-то значения в этом поле будут отсутствовать, тогда будет использоваться значение, указанное в обычном поле затрат на добычу руды.


- Параметр Цена элемента может изменятся в зависимости от типа породы, из которого этот элемент был извлечен.


- Пример использования переменной Z координаты для изменения значения ПКЗД.


Параметр Затраты на добычу пустой породы с использованием переменной поля и значения из блочной модели.

По всем вопросам к данной статье, обращайтесь: dmikulich@micromine.com

+3

Методичка по дизайну скважин БВР

Константин 5 years ago in Micromine / Mining updated by Илья (Moderator (RUS)) 1 year ago 67

Коллеги, кому не жалко - поделитесь методичкой по дизайну скважин БВР.

Очень нужно!

+2

Автоматическое построение проекта очистной камеры по 3-м штрекам


Как вы знаете макросы позволяют увеличить продуктивность работы за счет автоматического выполнения однообразных, рутинных задач, ниже пойдет речь об одном из примеров применения макросов на практике, а именно как автоматически построить проект очистной камеры  имея только осевые линии трех штреков и параметры камеры. Макрос и исходные данные  можете скачать тут:Создание камеры.7z

Исходные данные:

1. Параметры проектной камеры

      Все параметры камеры, которые обозначены «?» могут изменяться в пределах одной камеры.

2. Осевые линии 3х штреков

     Осевые линии предварительно должны быть закодированы уникальными значением, в данном примере Л-Левый штрек, П-Правый штрек, Н- Нижний штрек.



Весь макрос состоит из 4 процессов, которые выполняют разные задачи:

FCOPY (Скриптинг/Команды макроса/Копировать) –создает временную копию файла.

EXPRESSION (Файл/Изменить данные/Вычисления) – Позволяет вычислить значение по заданному выражению.

STREXTRD (Маркшейдерия/Инструменты ПГР/Каркас из осевой линии) – Создает объемный каркас заданной формы и сечения по осевой линии.

WFBOOLEAN(Каркас/Пересечения/Пересечения) – Выполняет различные Булевые операции с каркасами.

Общий вид и результат работы макроса:

Далее построчно описана работа макроса: 

1. CommentКомментарии, любая информация в этой строке игнорируется макросом 

2. FCOPYСоздается копия файла осевых линий штреков, необходимо для того чтобы не изменять структуру оригинальный файл.

   3.Comment

    4.EXPRESSION – Рассчитываем новую высотную отметку для осевых линий штреков. Необходимо для процессов STREXTRD(строка 9,11,12).

    5.Comment

    6.STREXTRD Создаем прямоугольный каркас относительно правого штрека с размерами 100 на 250 метров.

    7.STREXTRDСоздаем прямоугольный каркас относительно левого штрека с размерами 100 на 250 метров, смещение по Y не указываем.

    8.WFBOOLEANИспользуем операцию ПЕРЕСЕЧЕНИЕ СОЛИДОВ объединяем каркасы полученные в строке 6 и 7 Получаем каркас между правым и левым штреками.

    9.STREXTRD - Создаем каркас в виде треугольника по нижнему штреку

      10.WFBOOLEANИспользуем операцию ПЕРЕСЕЧЕНИЕ СОЛИДОВ объединяем каркасы полученные в строке 8 и 9.

    11. STREXTRD - Создаем каркас виде трапеции относительно правого штрека

    12.STREXTRD - Создаем каркас виде трапеции относительно левого штрека

    13.WFBOOLEANИспользуем операцию ПЕРЕСЕЧЕНИЕ СОЛИДОВ объединяем каркасы полученные в строке 11 и 12.

    14.WFBOOLEANИспользуем операцию ПЕРЕСЕЧЕНИЕ СОЛИДОВ объединяем каркасы полученные в строке 10 и 13.

    15.Comment

    16.STREXTRD - Создаем каркас правого штрека с заданным сечением

    17.STREXTRD - Создаем каркас левого штрека с заданным сечением

    18.STREXTRD - Создаем каркас нижнего штрека с заданным сечением

    19.WFBOOLEANИспользуем операцию ВАЧИТАНИЕ СОЛИДОВ вычитаем каркасы штреков из каркаса полученного в строке 14.

    20.STREXTRD - Создаем квадрат по исходному стрингу нижнего штрека, как показано на картинке ниже.

    21.STREXTRD - Создаем квадрат по исходному стрингу левого штрека, как показано на картинке ниже.

    22.STREXTRD - Создаем квадрат по исходному стрингу правого штрека, как показано на картинке ниже.

    23.WFBOOLEANИспользуем операцию ВАЧИТАНИЕ СОЛИДОВ, чтобы удалить часть камеры, которая выделена красным на картинке ниже.

    24.WFBOOLEANИспользуем операцию ОБЪЕДИНЕНИЕ СОЛИДОВ, чтобы заполнить зеленую область, которая выделена зеленым на картинке ниже.

    25.WFBOOLEANИспользуем операцию ОБЪЕДИНЕНИЕ СОЛИДОВ, чтобы заполнить синюю область, которая выделена зеленым на картинке ниже. В итоге получаем готовый каркас камеры.

      +1

      Экспресс-оценка вместимости отвальных площадей и последующее проектирование внешнего отвала

      Denis Malofeev 2 years ago in Micromine / Mining 0

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

      Экспресс оценка вместимости земель отчуждае....pdf

      +1

      Проектирование буровых вееров

      Константин 7 years ago in Micromine / Mining 0

      Коллеги, поделитесь методическим пособием по проектированию буровых вееров, пожалуйста! (если это не расстрельная статья конечно :-))

      +1

      Проектирование БВР

      Vasilii Radzion 8 years ago in Micromine / Mining 0
      Дорогие друзья. Во время проектирование буровзрывных скважин была замечена одна интересная особенность. Если Вам необходимо создать Новый ряд буровзрывных скважин, Расширить ряд буровзрывных скважин, Копировать / Переместить в опциях редактируемой базы данных необходимо активировать функцию "Показать ряды скважин". В обратном случае данные функции будут не активны. Будьте внимательней.

      0

      Экспорт каркасов из MM в AutoCAD

      lucky969 2 months ago in Micromine / Mining updated 2 months ago 2

      Добрый день! Возможно ли экспортировать каркас из MM в AutoCAD? Если возможно то как это сделать? Спасибо!

      0

      Разные углы карьера

      EvgenyG 6 months ago in Micromine / Mining updated by oenesterov 6 months ago 1

      Приветствую коллеги!

      Возможно ли изменить угол уступа в определленой области карьера т.е. с лежачей стороны например угол 60, а с весячей 40.

      Спасибо.

      0

      Каркасы бульдозера и экскаватора

      Yuri 7 months ago in Micromine / Mining updated by Alexandr 6 months ago 4

      Доброго времени суток коллеги!

      Есть у кого построенные каркасы  бульдозера и экскаватора (или хотя бы стрингом)?

      Answer

      Добрый день, Юрий.

      Подскажите, пожалуйста, для какой цели Вам необходимы эти каркасы?

      Для визуализации Вы можете воспользоваться формой Визекса 3D Модель, которая позволяет отображать файлы формата 3D моделей.

      Эти модели в открытом доступе, достаточно воспользоваться поисковиком в интернете и увидите множество бесплатных вариантов, некоторые из них (форматы Autodesk) можно преобразовать в каркас.


      Вот некоторые 3D модели, которыми Вы можете воспользоваться:

      Dredge N280608.rar
      Excavator.7z
      Mining_Hydraulic_Track_Drill_v2_L1.123c46d1....zip
      27-excavator.rar

      Если вместе с файлом идет 3D растр, то она будет спроецирована на саму модель, но не у всех моделей есть такие растры:


      Надеюсь мой ответ поможет Вам.

      0

      Планирование подземных горных работ

      Данияр 8 months ago in Micromine / Mining updated by mmalex 8 months ago 3

      Всем доброго дня! 

      Если есть, поделитесь пожалуйста пошаговой инструкцией по планированию горнопроходческих работ.