Надеюсь, мои ключевые слова описывают мою ситуацию. В основном, я работаю с SMC (Управление режимом скольжения) в Simulink, используя блоки симуляции и функциональные блоки S. Теперь я хочу использовать алгоритм DE (Differential Evolution), чтобы определить параметры SMC, которые дают наилучшие результаты. DE, реализованный двумя файлами m, один из которых содержит функцию для целевой функции (эта потребность DE), а другая содержит остальные алгоритмы DE, используемые для работы. То, что я сделал, это то, что я преобразовал один файл m в функцию s, потому что ему нужны некоторые переменные из Simulink Model, мой вопрос в том, что теперь я хочу использовать значение целевой функции в другом файле m (алгоритм DE), чтобы запустить DE, чтобы сделать несколько итераций. Надеюсь, я поняла. Я нашел несколько вещей here, но, похоже, я смотрю именно на противоположный сценарий.Как использовать переменные модели simulink в файле matlab m?
0
A
ответ
0
Давайте определим ваши два DE файлы первыми:
DE1: содержит функции для целевой функции;
DE2: содержит остальную часть алгоритма DE.
Насколько я понял, вы преобразовали DE2 в S-функцию и хотели использовать переменные в DE1 для итераций.
- Если переменные в DE1 постоянны, то используя constant блок в SimLink может решить вашу проблему. Просто поместите эти переменные в постоянный блок и подключитесь к DE2 в качестве входных данных.
- Если переменные в DE1 меняются во время итерации, то преобразование DE1 в S-функцию должно быть правильным способом.
Смежные вопросы
- 1. Как запустить модель Simulink в файле Matlab M таким образом?
- 2. использовать вложенные функции в M-файле MATLAB
- 3. Подключить модели в Matlab Simulink
- 4. Matlab ODE - интегратор Simulink с суммарным блоком в m-файле без simulink?
- 5. control simulink из M-файла
- 6. Управляющие переменные в SIMULINk
- 7. Matlab Simulink модель нелинейной модели
- 8. Взаимодействие Simulink с MATLAB
- 9. Улучшить запуск модели Simulink из m-файла
- 10. Найти неиспользуемые переменные и функции в проекте MATLAB-Simulink
- 11. сигнал поколения модели в Simulink из MATLAB
- 12. Моделирование модели SIR в matlab и simulink
- 13. Ускорение модели в Matlab-Simulink (Mac OSX)
- 14. Сохраните отсортированный файл модели simulink в файле
- 15. MATLAB: Как получить переменные из m-файла GUI в Simulink Model
- 16. Простой Matlab/Simulink модели, добавление 2 сигнала
- 17. Настройка и оптимизация модели MATLAB/Simulink
- 18. Настройка модели Simulink Значение Inport из файла m
- 19. как использовать данные из MATLAB в качестве входа в Simulink
- 20. Чтение ввода m-файла в основном файле m
- 21. Функция Matlab внутри simulink
- 22. Получение данных от MATLAB Simulink каждые 0.008s в .txt-файле
- 23. Как отладить Matlab/Simulink?
- 24. Как получить размеры сигнала в модели Simulink
- 25. Как использовать переменные в файле YAML?
- 26. Как найти все функциональные блоки MATLAB в модели Simulink
- 27. Как получить передаточную функцию от модели Simulink в Matlab
- 28. Отладка модели Simulink программно
- 29. Как параллельно с последовательным в MATLAB/Simulink
- 30. Как обрабатывать фиолетовые единицы в Matlab/Simulink
Итак, моя первая мысль заключается в том, что есть особая причина, по которой вы не можете преобразовать второй файл в s-функцию Simulink? В этом случае, боюсь, ваш единственный вариант - это вручную сохранить каждую необходимую переменную в рабочей области на каждом временном шаге. Вы должны сделать это, используя ['assignin'] (http://www.mathworks.com/help/matlab/ref/assignin.html). –