RSS  |  PDA

Это реклама. Ссылки открываются в новом окне.
Проектирование и моделирование

Посоветуйте САПР для моделирования управления лабиринтными и мозаичными автоматами


Скайнет3000
11.04.2014, 16:36

Представьте себе сеть трубопровода. Она представляет собой большой сложный граф (лабиринт).
Каждое ребро графа — труба, которая может содержать вентиль. Если вентиль открыт — проход открыт, и вода может течь через ребро/трубу. Если вентиль закрыт — вода через ребро/трубу течь не может.

Соответственно, вода между двумя произвольно выбранными узлами может протекать если В ДАННЫЙ КОНКРЕТНЫЙ МОМЕНТ существует путь/маршрут (т.е. непрерывная последовательность рёбер) между этими узлами и у всех ребёр этого пути вентили открыты в данный момент.

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

Задача состоит в том, чтобы написать программу, которая бы отслеживала текущее состояние лабиринта/трубопровода и включая или выключая вентили динамически формировала бы и поддерживала путь протока воды от узла/точки А к узлу/точке Б. Причем не абы какой, а такой, чтобы этот путь обязательно содержал как минимум 3(4, 5 или сколько Вам нужно) точки из заданного множества точек.

Посоветуйте тулзу, в которой удобно и просто решаются подобного плана задачи. Плюс чтобы в этой тулзе генерировалась бы интерактивная мнемосхема, на которой бы АВТОМАТОМ выделялось бы цветом состояние вентилей включен/выключен и кроме того подсвечивалась бы группа клапанов, состояние которых нужно изменить (включить или выключить) на данном такте, чтобы поддержать поток жидкости от точки А к точки Б, протекающий через заданные промежуточные точки
Гуглением я вышел не пару десяток SCADA. Беглое знакомство с ними показало, что подобные задачи в них сделать нельзя или крайне гиморно.

Зачем мне нужно моделировать мозаичные алгоритмы?
Хочу на экране монитора смоделировать реальный пульт управления. С кучей кнопочек и светодиодов.
И дать поиграться заказчику. И при этом чтобы поведение индикации было такое же как на пульте реального объекта.

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

Т.е. наверное придётся задавать правила типа как в грамматиках Хомского.
Ведь элементы пульта - это фактически цепочка символов. А множество допустимых состояний элементов - это фактически множество допустимых цепочек языка.
Наверное для анализа придётся использовать генераторы синтаксических парсеров. Типа YACC или LEX

# 
alx25v ◊
11.04.2014, 18:56

Это практически маршрутизация в интернете...

# 
Скайнет3000
12.04.2014, 02:29

Да много есть в природы технических систем "лабиринтного типа".
И в каких программах их моделируют?

# 
kreking
12.04.2014, 15:51
Скайнет3000: И в каких программах их моделируют?

Читайте http://nkras.ru/vmno/ru/issues/articles/2010/6-1.pdf, я бы посоветовал AnyLogic " Имитационное моделирование систем в среде AnyLogic" http://www.anylogic.ru/upload/Books_ru/Kisileva_Simulation_Modeling_In_AnyLogic.pdf и другие книги http://www.anylogic.ru/books
# 
Скайнет3000
21.04.2014, 22:39
kreking: Имитационное моделирование систем в среде AnyLogic

Про неё слышал.
Только она уж больно монстрообразная.
Да и кряка на неё я так и не нашёл.
#