Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Simulink и исходный массив
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Вопросы системного уровня проектирования
PavPro
Добрый день. Вопрос относительно простой. Имеется симулинк модель. В качестве входящих данных для модели используется блок Signal From Workspase, в котором указанно имя массива с данными. Сейчас приходится каждый раз при открытии файла модели, этот массив загружать в ручную в рабочее поле матлаб. Как мне сделать так, что бы при загрузки файла модели, этот массив автоматом загружался в рабочее поле матлаб. Я так подозреваю что где то в модели или ее настройках должен быть прописан путь к этому массиву, но никак не могу найти, где?
Заранее спасибо.
Grizzzly
View -Model Explorer - Model Workspace. Там можно подключить mat-файл, m-код или модель.
PavPro
Цитата(Grizzzly @ Oct 23 2015, 11:50) *
View -Model Explorer - Model Workspace. Там можно подключить mat-файл, m-код или модель.

Спасибо большое, вроде разобрался.
Fat Robot
Хороший стиль - это когда все параметры модели и ее блоков берутся из workspace. Для этого они рассчитываются скриптом при загрузке или при старте модели.
Для запуска скриптов на разных этапах работы модели используются Model Callback Functions.
Теми же методами можно сохранять результаты работы модели из workspace в файл
PavPro
Дабы не плодить новую тему, спрошу здесь. Есть модель АРУ, есть два режима моделирования: 1) данные в АРУ идут в режиме последовательных выборок,
2) данные поступают в виде вектора.
1-й вариант симулируется без проблем, на ура. Во втором варианте в зависимости от длины вектора, довольно часто вываливается следующая ошибка,
(To rule out solver convergence as the cause of this error, either
a) switch to LineSearch-based algorithm using
set_param('agc','AlgebraicLoopSolver','LineSearch')
cool.gif reducing the fixed step size.
If the error persists in spite of the above changes, then the model is likely ill-defined and requires modification.)
правда при определенных размерностях вектора, симуляция проходит корректно но очень долго. Пробовал различные режимы Solver, и step size - не помогает.
Не понятно, по поводу AlgebraicSolver, куда лезть чтобы его отключить, перенастроить? Что я делаю не так?
Fat Robot
Ошибка скорее всего связана с тем, что в систему с обратной связью закрался неразрешимый алгебраический цикл (model is ill-defined). Например, применительно к петле ару, такая ситуация может возникнуть, если сигнал с выхода управляемого усилителя поступает на управляюций вход управляемого усилителя после ряда простых функциональных преобразований (например: возвели в квадрат, взяли логарифм, затем умножили, затем прибавили и т.п. ).

В этом случа алгебраический цикл надо разорвать, поставив элемент задержки в цепь обратной связи.
PavPro
Цитата(Fat Robot @ Oct 26 2015, 19:25) *
Ошибка скорее всего связана с тем, что в систему с обратной связью закрался неразрешимый алгебраический цикл (model is ill-defined). Например, применительно к петле ару, такая ситуация может возникнуть, если сигнал с выхода управляемого усилителя поступает на управляюций вход управляемого усилителя после ряда простых функциональных преобразований (например: возвели в квадрат, взяли логарифм, затем умножили, затем прибавили и т.п. ).

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

Спасибо большое за ответ. Насколько я понял из описания Simulink, не очень хорошо когда в модели присутствуют алгебраические циклы? Другой вопрос, как от них избавляться, ведь далеко не всегда можно безболезненно вести элемент задержки в цепь обратной связи (например я не уверен что для той же ФАПЧ, модель будет корректно работать, хотя надо пробовать)? Так же не понятно почему при скалярном типе данных Simulink не спотыкается, а при векторном есть
проблемы. Ведь алгебраический цикл присутствует в обоих случаях, модель то одна?
Fat Robot
Да, конечно. Вот здесь всё описано:
http://mathworks.com/help/simulink/ug/algebraic-loops.html
http://mathworks.com/help/simulink/ug/types-of-solvers.html
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.