Borrar filtros
Borrar filtros

I want to access the variable outside the loop or want to change the variables value in loop but in every iteration

9 visualizaciones (últimos 30 días)
I am getting real time data in every 5 seconds (with pause) with a while loop and make varibales to store that data which come from amazon s3 service . How can I use the current data outside the loop and proceed to do computation with the most current data ? When the loop is running I can not do anything and not get the letest value of the variables in base workspace until it is finished.. And I need to create infinite loop to continuously get the data.
Here I got the variables in baseworkspace when I stop the script to running but I want it in every 5 seconds when when one iteration is finished of while.
while 1
options = weboptions("ContentType", "text");
jsonData = webread('https://amazon-bucket.s3.amazonaws.com/Testdata', options);
% Convert the JSON data to a character vector
jsonDataChar = char(jsonData);
% Parse the JSON data into a MATLAB structure
dataRcv = jsondecode(jsonDataChar);
% Extract the desired values
V = dataRcv.V;
Hydro = dataRcv.Hydro;
Lvl = dataRcv.Lvl; % and other variables
disp('Running....');
pause(5)
end
  2 comentarios
Dyuman Joshi
Dyuman Joshi el 8 de Dic. de 2023
What computation do you have to do?
You can define a function and call it using the data for each iteration of the while loop.
Dhenish
Dhenish el 11 de Dic. de 2023
I want to use varibables for Simulink so as per my knowledge I can use varibables which are store in base workspace.
So I want to store all the variable in base workspace and that data are changing in every 5 seconds so I used while loop to run the script in every 5 seconds. But the problem is when the loop is running I can not do anything and not get the letest value of the variables in base workspace.
Function for what ??

Iniciar sesión para comentar.

Respuesta aceptada

Florian Bidaud
Florian Bidaud el 8 de Dic. de 2023
Editada: Florian Bidaud el 8 de Dic. de 2023
One solution could be to save it in a mat file at each step, then you have full access to it with a parfeval or any parallel computing tool for example.
  2 comentarios
Dhenish
Dhenish el 11 de Dic. de 2023
For that purpose can I save file inside the while loop ?? With this line of code ??
save result.mat dataRcv -mat;
Here I have a json structure inside the dataRcv variable and all the variables which I need that all are in dataRcv. So If I got the dataRcv then I computation what I want.

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by