problem of getting data from Simulink to Workspace with Matlab Fcn block
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hello,
I'm trying to convert the hexadecimal numbers to ascii strings and pass it from Simulink to Workspace. To do that I used a Matlab Fcn block : function y = fcn(u) %#eml eml.extrinsic('assignin'); eml.extrinsic('strcat'); eml.extrinsic('plot');
Temp5 = ConvertToAscii(u(1),u(2),u(3),u(4));
assignin('base','Str_Digits',Temp5);
y = u(1);
So, when I click on the button 'Start simulation' in Simulink, I can see the output value change every time steps. However, when I launch a m file, I can only see the output after that m file execution finished. How to resolve this problem?
Thank you,
3 comentarios
Kaustubha Govind
el 20 de Jul. de 2011
Do you mean that at the end of simulation, only the last value of 'Temp5' is available, and you really want it to be an array of strings?
Respuesta aceptada
Fangjun Jiang
el 21 de Jul. de 2011
Your MATLAB Fcn block is also executed at every simulation step. Your statement assignin('base','Str_Digits',Temp5); over-write the variable "Str_Digits" in base workspace. Are you saying that you only saw one value of "Str_Digits"? Try to add the following line after that statement. Maybe you will see the value got updated continuously in the command window.
evalin('base','Str_Digits')
Más respuestas (1)
Rick Rosson
el 21 de Jul. de 2011
Simulink does not support character or string data types. I would recommend that you do these calculations in MATLAB instead. If the data is being generated by a Simulink model, then you can simply pass the data from Simulink to the MATLAB Workspace using the "To Workspace" block, and then process the data using the "StopFcn" Callback Function.
There is no real advantage in trying to do this task with the MATLAB Function Block, and as you have discovered, there are many disadvantages in this case.
HTH.
1 comentario
Maddila
el 20 de Dic. de 2012
if u use "to workspace" block also,,u wont get continuos updated values back to the base workspace
Ver también
Categorías
Más información sobre Sources en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!