MATLAB Answers

0

How do i use the timer function to execute a script at 06:00hrs each day monday through friday

Asked by Charles on 14 Sep 2017
Latest activity Answered by Jan
on 15 Sep 2017
Accepted Answer by Jan
I currently have the following but i want this to occur each day at the same time
T1 =timer(TimerFcn','myscriptname')
Startat(T1,"06:00:00');
delete(T1)

  0 Comments

Sign in to comment.

2 Answers

Answer by Jan
on 15 Sep 2017
 Accepted Answer

Using a timer requires your computer to be not in sleep mode and Matlab must be running. This is rather inefficient for a "each day" job. A scheduled task (Windows) or cron job (Linux/Mac, also systemd) might be a better solution. You can either compile the Matlab code or start Matlab with the -r switch to start a specific function or script.
See e.g. https://www.groovypost.com/howto/schedule-wake-sleep-windows-automatically/ for waking up a Windows PC by a scheduled task. Afterwards e.g. https://www.mathworks.com/matlabcentral/fileexchange/37647-winpower can set the computer to sleep again, or let Windows decide this with the standard methods after a certain period of time.

  0 Comments

Sign in to comment.


Answer by Walter Roberson
on 14 Sep 2017

Set up the timer with TasksToExecute infinite and Period 60*60*24 and execution mode FixedRate.