Я пытаюсь управлять симуляцией из M-файла. Что я хочу сделать в M-файле, это дать модели simulink некоторый ввод, запустить модель simulink, изменить одно входное значение на 0,6 секунды, продолжить работу модели simulink с новым входом.control simulink из M-файла
Я уже знаю, что с помощью set_param я могу начать, приостановить и продолжить симуляцию, но проблема в том, что я не знаю, как приостановить модель simulink в определенное время (0,6 с), возможно ли получить текущее время от модели simulink и прочитать ее в M-файле?
Другой способ, который я уже знаю, - использовать sim для запуска модели simulink от 0 до 0,6 и использовать SimState для сохранения информации на 0,6 секунды, а затем загрузить эту информацию, чтобы возобновить симуляцию. Я пытаюсь изменить входные данные до возобновления моделирования, но, похоже, модель будет загружать входные значения из сохраненной информации, она не будет принимать новое значение ввода.
Я застрял в этой проблеме в течение очень долгого времени, может ли кто-нибудь помочь мне с этим, пожалуйста?
спасибо.
См. Мой ответ, это неправда, что это невозможно. Я реализовал это для себя некоторое время назад, чтобы показать подобие, дающее прогресс симуляционной симуляции. – mmumboss
@ Johann3s, правда, что вы можете обнаружить, когда сеанс Matlab достиг времени моделирования 0.6s, теперь изменить значение переменной, используемой моделью во время симуляции, как указано в вопросе, сложнее, и я считаю, что не возможно в M-script в настоящее время. – macduff
Я думаю, что это будет возможно таким же образом, выдав команду из вашего m-файла во время моделирования. Очевидно, вам нужно отключить встроенные параметры, но я не понимаю, почему это не сработает? – mmumboss