How to get system date and time into simulink?

Is there a way to get the system date and time (not simulation time) into simulink?

2 comentarios

TAB
TAB el 28 de Feb. de 2012
In which datatype & formate?
How you are going to use it in simulink?
Jan De Vries
Jan De Vries el 28 de Feb. de 2012
As integers, I'm going to use it to calculate the position of the sun (which depends on location and date/time).

Iniciar sesión para comentar.

 Respuesta aceptada

TAB
TAB el 28 de Feb. de 2012
Use below code in embedded matlab function block. It will give the date and time components as separate output.
function [Y, M, D, H, MN, S] = fcn()
eml.extrinsic('now');
eml.extrinsic('datevec');
Y = 0;
M = 0;
D = 0;
H = 0;
MN = 0;
S = 0;
[Y, M, D, H, MN, S] = datevec(now);
end

4 comentarios

Rick Rosson
Rick Rosson el 28 de Feb. de 2012
eml.extrinsic has been deprecated. The new syntax is coder.extrinsic.
Sathish
Sathish el 24 de Jun. de 2013
In my project, I ve to compare my simulink pattern time and actual time.So i need to get System Date and time. While reading System Date and time, simulink shows the error as
Unsupported: structure access
Function 'Embedded MATLAB Function' (#40.40.53), line 2, column 4: "eml.extrinsic" please help to sort this issue
Kaustubha Govind
Kaustubha Govind el 24 de Jun. de 2013
Sathish: Please post this as a new question along with your code.
Srikar
Srikar el 11 de Dic. de 2023
Can the new question's link be shared here, it shall help out many!

Iniciar sesión para comentar.

Más respuestas (4)

Rick Rosson
Rick Rosson el 28 de Feb. de 2012
A slightly simpler version:
function [Y, M, D, H, MN, S] = sysClock()
coder.extrinsic('clock');
Y = 0;
M = 0;
D = 0;
H = 0;
MN = 0;
S = 0;
[Y, M, D, H, MN, S] = clock;
end
Rick Rosson
Rick Rosson el 28 de Feb. de 2012
Please try using the MATLAB Function block with the code:
function t = sysTime
t = now;
end
HTH.

5 comentarios

Jan De Vries
Jan De Vries el 28 de Feb. de 2012
Unfortunately, this doesn't work:
The function 'now' is not supported by Embedded MATLAB for code generation. See the documentation for eml.extrinsic to learn how you can use this function in simulation.
Function 'Embedded MATLAB Function' (#45.25.28), line 2, column 5:
"now"
TAB
TAB el 28 de Feb. de 2012
Try.........
function t = sysTime
eml.extrinsic('now');
t=0;
t = now;
end
Note:
'now' returns the current date and time as a serial date number.
Rick Rosson
Rick Rosson el 28 de Feb. de 2012
Sorry, I forgot to include the extrinsic declaration. Thanks, TAB.
macs macalintal
macs macalintal el 7 de Mzo. de 2016
how to call the current time only, not with the current date?
Walter Roberson
Walter Roberson el 7 de Mzo. de 2016
There is no way to fetch only the time without the date. The sysClock routine that Rick showed above can be modified to discard the date portions and return only the time components.

Iniciar sesión para comentar.

Kareem Abdelgawad
Kareem Abdelgawad el 24 de Nov. de 2014

0 votos

I tried to use it under 'Real-Time Windows Target', but it doesn't work. Any ideas how to read system time under 'Real-Time Windows Target'?

2 comentarios

shu
shu el 22 de En. de 2015
Me too. With the error of "The extrinsic function 'clock' is not available for standalone code generation. It must be eliminated for stand-alone code to be generated."
Wenbin Xu
Wenbin Xu el 13 de Ag. de 2019
I have also encountered that problem. Is there any solutions?

Iniciar sesión para comentar.

Categorías

Más información sobre Deployment, Integration, and Supported Hardware en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 28 de Feb. de 2012

Comentada:

el 11 de Dic. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by