Для того, чтобы смоделировать некоторые процессы, у меня проблема с получением предопределенного рабочего порядка для моих самомоделируемых блоков.
Как я могу быть уверен, что, например, блок А должен быть закончен до того, как блок В и С начнут работать?
Проблема в том, что некоторые блоки должны работать после некоторых других, а некоторые - нет. Я должен признать, что у меня нет большого опыта работы с Simulink для выполнения зависящих от времени вещей (хотя базовые знания Simulink доступны).
Например, этот сценарий должен быть реализован:
A -> B, C -> D, E, F
Главное, что все блоки A-F не имеют логической корреляции друг с другом, все они делают несколько вещей. Моя цель - заставить В и С начать работать после того, как А закончил. И D / E / F после B и C закончили.
В этом случае слово «параллель» было неправильным, это не должно быть вычислено действительно параллельно. Просто убедившись, что это соответствует заранее определенному устойчивому порядку.
Изменить:
Моя новая идея состоит в том, чтобы использовать буфер als рабочей области matlab, чтобы мой блок A мог отправить свои результаты в рабочую область (с помощью блока "to workspace"). Но теперь я должен убедиться, что блоки B и C могут считывать результаты (с «Из рабочего пространства») A ПОСЛЕ того, как A перенесла свою информацию в рабочее пространство ... как это сделать?
Edit2:
Вот скриншот, который должен прояснить некоторые мысли:
http://img825.imageshack.us/img825/2830/screenshotbs.jpg
Как указано в документации «Порядок сортировки», настройка, кажется, в порядке (включая синхронизацию подсистем). Но, к сожалению, проблема все еще существует. Переменная «simin» загружается из рабочей области до того, как она была записана :( Как видите, на дисплее отображается «1», чего не должно быть. В самом первом запуске симуляции я получаю исключение, что переменная "Симин" не существует.
Было бы неплохо, если бы вы могли помочь мне с моей проблемой.
Привет, poeschlorn