Я использую «setVariable» для обновления переменной в тестовом наборе. Я использую команду

evalin('base', 'y_coordinate')

в блоке «Из рабочей области», чтобы загрузить переменную в Simulink.

Однако в R2019b переменная, похоже, не обновляется. Почему это происходит?

ОТВЕЧАТЬ

Matlabsolutions.com предоставляет последнюю Помощь по домашним заданиям MatLab, Помощь по заданию MatLab для студентов, инженеров и исследователей в различных отраслях, таких как ECE, EEE, CSE, Mechanical, Civil со 100% выходом. Код Matlab для BE, B.Tech , ME, M.Tech, к.т.н. Ученые со 100% конфиденциальностью гарантированы. Получите проекты MATLAB с исходным кодом для обучения и исследований.

В R2019b поведение «setVariable» изменено таким образом, что оно переопределяет только переменные модели (в отличие от переменных MATLAB).

Я прикрепил более простую модель («SimpleVars_R2019b.slx»), чтобы проиллюстрировать это. Эта модель имеет два блока «Из рабочей области», один из которых установлен на «a», а другой — на «evalin(‘base’, ‘b’)».

Если вы вызываете «findVars» в этой модели, только «a» считается переменной модели, даже если обе выводят свои временные ряды при запуске:

>> vars = Simulink.findVars('SimpleVars_R2019b')
vars = 
    VariableUsage with properties:
            Name: 'a'
          Source: 'base workspace'
      SourceType: 'base workspace'
           Users: {'SimpleVars_R2019b/From↵Workspace'}

Поведение R2019b

СМОТРИТЕ ПОЛНЫЙ ОТВЕТ НАЖМИТЕ НА ССЫЛКУ

https://www.matlabsolutions.com/resources/why-does-setvariable-in-simulink-test-not-update-variables-.php