How to acces a simscape.logging.Node
조회 수: 5 (최근 30일)
이전 댓글 표시
I have a simulink/Simscape model, the results are logged in a variable called 'simlog'. I am struggeling to get the rotational speed from the Motor to plot it in a matlab skript.
I started to extract the informationm to a separate varibale called temp:
>> temp=(simlog.Motor_And_Load.PMSM.Permanent_Magnet_Synchronous_Motor.angular_velocity);
>> whos temp
Name Size Bytes Class Attributes
temp 1x1 8 simscape.logging.Node
>> temp
temp =
Node with properties:
id: 'angular_velocity'
savable: 1
exportable: 0
series: [1×1 simscape.logging.Series]
With plot(temp) a new figure opens every time. My goal is to have an array with time and velocity values that I can use in subplots and for further calculations. I tried it with a get but that doesn't work. Can someone please help?
>> test = get(temp, 'angular_velocity');
Path 'angular_velocity' is not a valid path for this node.
댓글 수: 3
madhan ravi
2023년 12월 2일
이동: madhan ravi
2023년 12월 2일
Unfortunately I can’t test MAT file either since I don’t have access to computer. But you are right it’s already a figure.
채택된 답변
Githin George
2023년 12월 12일
Hello,
My understanding is that you would like to store the velocity and time values of a simulation output, for a model containing Simscape blocks.
I’m assuming that the variable “simlog” is the simulation output variable exported to workspace. You can use the following code to obtain the values of ‘angular_velocity’ and store them in an array.
data = simlog.Motor_And_Load.PMSM.Permanent_Magnet_Synchronous_Motor.angular_velocity.series
angular_velocity = values(data)
% the time variable is already stored in workspace as ‘tout’
You can verify these values by doing a plot of tout vs angular_velocity.
I hope this helps.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Logging에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!