![]() |
Модераторы: ama_kid |
![]() ![]() ![]() |
|
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
Поясню о чём речь
Представьте себе сеть трубопровода. Она представляет собой большой сложный граф (лабиринт). Каждое ребро графа — труба, которая может содержать вентиль. Если вентиль открыт — проход открыт, и вода может течь через ребро/трубу. Если вентиль закрыт — вода через ребро/трубу течь не может. Соответственно, вода между двумя произвольно выбранными узлами может протекать если В ДАННЫЙ КОНКРЕТНЫЙ МОМЕНТ существует путь/маршрут (т.е. непрерывная последовательность рёбер) между этими узлами и у всех ребёр этого пути вентили открыты в данный момент. Некоторые вентили управляются извне по неизвестному нам закону. А некоторыми вентилями мы может управлять, т.е. можем открывать или закрывать их в любой момент когда захотим. Задача состоит в том, чтобы написать программу, которая бы отслеживала текущее состояние лабиринта/трубопровода и включая или выключая вентили динамически формировала бы и поддерживала путь протока воды от узла/точки А к узлу/точке Б. Причем не абы какой, а такой, чтобы этот путь обязательно содержал как минимум 3(4, 5 или сколько Вам нужно) точки из заданного множества точек. Посоветуйте тулзу, в которой удобно и просто решаются подобного плана задачи. Плюс чтобы в этой тулзе генерировалась бы интерактивная мнемосхема, на которой бы АВТОМАТОМ выделялось бы цветом состояние вентилей включен/выключен и кроме того подсвечивалась бы группа клапанов, состояние которых нужно изменить (включить или выключить) на данном такте, чтобы поддержать поток жидкости от точки А к точки Б, протекающий через заданные промежуточные точки Гуглением я вышел не пару десяток SCADA. Беглое знакомство с ними показало, что подобные задачи в них сделать нельзя или крайне гиморно. --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
чо не хлэпаем?
![]() --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
ama_kid |
|
|||
![]() АСУТП-кодер ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1460 Регистрация: 5.3.2007 Где: Москва Репутация: 1 Всего: 95 |
Как бэ у софта класса "SCADA" немного другие задачи. Твоя задача, конечно, решается частично с помощью SCADA, но алгоритмический модуль обработки состояния графа тебе в любом случае писать самому, хоть в виде внешней библиотеки, хоть в виде внутреннего модуля. Либо искать спец-софт, который заточен под теорию графов и сопрягать его со SCADA, какой-нибудь математический пакет типа MathCad или Maple с возможностью цепляться по внешнему интерфейсу.
-------------------- самурай без меча подобен самураю с мечом, но только без меча |
|||
|
||||
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
неужели нет стандартных решений (реализованных в виде софта или специализированных языков программирования) для такого класса задач?
Просто очень уж не хочется "изобретать велосипед" если есть уже готовые, стандартные, "заточенные" под такой класс задач программные средства --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
ama_kid |
|
|||
![]() АСУТП-кодер ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1460 Регистрация: 5.3.2007 Где: Москва Репутация: 1 Всего: 95 |
-------------------- самурай без меча подобен самураю с мечом, но только без меча |
|||
|
||||
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
В том-то и дело, что ВООБЩЕ НЕТУ ![]() Серьёзных инструментов --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
А вот в какой тулзе лучше моделировать мозаичные алгоритмы?
На каком языке кульней и рулезней описывать и такого род зависимости:
При том, что координаты "точек" мозаики реально могут быть не двумерными, а n-мерными. И прога должна определять все возможные варианты подстановок, которые приведут к появлению на мозаике заданного изображения Зачем мне нужно моделировать мозаичные алгоритмы? Хочу на экране монитора смоделировать реальный пульт управления. С кучей кнопочек и светодиодов. И дать поиграться заказчику. И при этом чтобы поведение индикации было такое же как на пульте реального объекта. А для этого, мне нужно как-то описать зависимости между состояниями отдельных как видимых на экране так и не видимых элементов системы и скормить набор логических уравнений спец. тулзе, которая схавает их и будет использовать при обработке действий юзверя и отображении "мозаики" на экране монитора Т.е. наверное придётся задавать правила типа как в грамматиках Хомского. Ведь элементы пульта - это фактически цепочка символов. А множество допустимых состояний элементов - это фактически множество допустимых цепочек языка. Наверное для анализа придётся использовать генераторы синтаксических парсеров. Типа YACC или LEX Оператора я посажу на двумерную модель. А n-мерная нужна чиста для моих ЛИЧНЫХ теоретических научно-исследовательских задач в области теории программирования. Моделирование мозаичных алгоритмов дл меня представляет чисто научный интерес. И мне не важно какой от этого практический выхлоп. Т.е. как это можно использовать кому-то на практике Это сообщение отредактировал(а) ДокторТуамОсес - 18.1.2014, 16:00 Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
ДокторТуамОсес |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 242 Регистрация: 8.6.2009 Репутация: нет Всего: -12 |
Так кто-нибудь ответит мне? Или как?
![]() Это сообщение отредактировал(а) ДокторТуамОсес - 25.1.2014, 09:18 --------------------
"Извините! А это ничего, что я говорю в тот момент, когда Вы меня перебиваете?"™ |
|||
|
||||
BlackRu |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 431 Регистрация: 14.9.2009 Репутация: нет Всего: 4 |
Идея напоминает клеточный автомат. Интересно...
-------------------- Удалена администрацией форума |
|||
|
||||
Kuroki2223 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 1.11.2020 Репутация: нет Всего: нет |
Может есть готовые решения?
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | SCADA-системы и контроллеры стандарта IEC (МЭК) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |