Simulink: To Workspace block, collects only one or two data points (Running in External mode)
Mostrar comentarios más antiguos
I am running a simulink model in external mode, and I get only one data point after the run from "To workspace block". I have tinkered with the settings a lot to get this to work, but I am not able to get more than two data points.
I am using Matlab R2015b, model is running on Arduino Mega 2560. The following are the screenshots of the settings I am using: Model:

To Worksoace block setting:

Solver settings:

Data Import/Export:

Respuesta aceptada
Más respuestas (5)
Vidya Viswanathan
el 1 de Abr. de 2016
1 voto
Hi,
I notice that in your model, the sample rate used is 6ms. Typically, the gap in output data is observed when the sample rate is less than 10ms because the target tries to upload the data to the host every few seconds.
To resolve the issue,
1) Please increase the duration further in your model and see if it satisfies your requirements. Ideally, it is not recommended to run external mode on Arduino targets at very high rates (such as 1 ms).
2) If your requirement is to have data archiving at very high speeds, it is recommended to use a serial block for data upload. You would then use an ICT receive block on the Host to log data into MATLAB.
I hope this addresses your query.
Regards,
Vidya Viswanathan
1 comentario
I am encountering the same issues with the MinSeg.
The dynamic data goes to scope without issue, but only the final value goes to the workspace.
I have tried an (inherited) simulation step of 0.1 [s], and also set the decimation to 10. This did not have any effect; only the final value appears.
[r2015b]
Auralius Manurung
el 26 de Feb. de 2016
0 votos
I am having the same problem in R2015b. Any update on this issue will be very much appreciated.
Giorgio Concu
el 6 de Dic. de 2017
0 votos
I had the same problem and I fix it just upgrading to R2016b.
Number seven
el 10 de Mzo. de 2022
0 votos
I was having a similar issue where no data was being output to the workspace. I fixed it by going to tab Code > External mode control panel > Data Archiving. Then here I enabled Data Archiving, selected a directory and typed my desired file name. Now I have my variable in the To Workspace block being written to workspace, although I also get a file in the same directory with the name I set in Data Archiving.
Categorías
Más información sobre Arduino Hardware en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!