Имам модел Simulink, който включва следната подсистема.
Блокът bm_train_adapter
ще извика функция на MATLAB със същото име, предавайки всички входни аргументи в един вектор.
На подсистемата е дадено време за извадка от 900 (секунди), поради което всички сигнали са оцветени в червено (за дискретни сигнали).
В програмата за отстраняване на грешки обаче забелязах, че функцията bm_train_adapter
се извиква два пъти на всяка стъпка от времето на симулация. Това води до ужасно грешни резултати, тъй като функцията включва странични ефекти.
Защо Simulink извиква моята интерпретирана MATLAB функция повече от веднъж на времева стъпка? Как мога да предотвратя това?