How can i obtain a Narx block in Simulink independent from the sample time of the identified neural network?

5 views (last 30 days)
Marco Pizzoli
Marco Pizzoli on 16 Sep 2021
Commented: Marco Pizzoli on 16 Sep 2021
Hi everyone,
I've trained a NARX neural network with an input\output timeseries data sampled at dt = 0.00125.
Then, i've converted the net in a closed loop form thanks to the closeloop function.
Finally, i've generated a Simulink block of this closed net by using gensim function and by specifying a sample time equal to the one of the timeseries used for the identification (so, exactly dt = 0.00125).
Now, i want to use this gensim block in another Simulink model, where the sample time is different than dt = 0.00125 and could be any.
My wish would be to create a block that is independent of the sample time and adapts to the sample time of the simulink model simulation.

Answers (1)

David Willingham
David Willingham on 16 Sep 2021
As the NNet is trained on a specific sample time, it's likely not going to predict well at different sample times. My recommendation is that you'll need to add a rate transistion block before / after the NNet. An example of how to do this can be found here:

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by