Показано с 1 по 8 из 8

Тема: Выполнение задачи в определенное время

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    Lightbulb

    Было много раз на форуме.
    Код:
    PROGRAM GetingTime
    VAR
    	GetTime: CurTimeEx;
    	TimeAndDate: SystemTimeDate;
    	Sys_Time: SysTime64;
    
    END_VAR
    VAR_OUTPUT
    	out_hour: UINT;
    	out_minute: UINT;
    	out_DayOfWeek: UINT;
    END_VAR
    ------------------------------------
    TimeAndDate.Day :=0;
    TimeAndDate.DayOfWeek :=0;
    TimeAndDate.dwHighMsec :=0;
    TimeAndDate.dwLowMSecs :=0;
    TimeAndDate.Milliseconds :=0;
    TimeAndDate.Minute :=0;
    TimeAndDate.Second :=0;
    TimeAndDate.Hour :=0;
    TimeAndDate.Year :=0;
    TimeAndDate.Month :=0;
    Sys_time.ulHigh :=0;
    Sys_time.ulLow :=0;
    GetTime (SystemTime:=Sys_Time , TimeDate:= TimeAndDate);
    
    out_hour:=TimeAndDate.Hour ;
    out_minute:=TimeAndDate.Minute;
    out_DayOfWeek:=TimeAndDate.DayOfWeek;
    Потом использовать например так...
    plc0.jpg

  2. #2

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    Было много раз на форуме.
    Потом использовать например так...
    plc0.jpg
    Спасибо. А не могли бы вы пояснить - а таймер тут нужен принципиально? или он берется из логики некоторой программы?

    Цитата Сообщение от _Mikhail Посмотреть сообщение
    А не проще сравнивать свою уставку времени с системными часами и когда они будут равны выполнить условие
    Я так и сделал в результате. Изначально не хотелось в основной цикл вставлять проверку, которая сработает только один раз в сутки...

  3. #3
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    По умолчанию

    Цитата Сообщение от bladerunner Посмотреть сообщение
    Спасибо. А не могли бы вы пояснить - а таймер тут нужен принципиально? или он берется из логики некоторой программы?


    Я так и сделал в результате. Изначально не хотелось в основной цикл вставлять проверку, которая сработает только один раз в сутки...
    Это кусочек из логики программы, для вас никакой полезной нагрузки таймер не несет. Главное создайте PRG\FB, объявите, и пользуйтесь выходными переменными блока, при желании в строки
    VAR_OUTPUT
    out_hour: UINT;
    out_minute: UINT;
    out_DayOfWeek: UINT;
    END_VAR
    можете дописать еще то, что нужно, например год.

Похожие темы

  1. Ответов: 1
    Последнее сообщение: 18.09.2014, 10:28
  2. ТРМ148 подойдет ли к поставленной задачи?
    от Игорёк в разделе Подбор Оборудования
    Ответов: 13
    Последнее сообщение: 19.10.2012, 10:19
  3. Ответов: 2
    Последнее сообщение: 17.02.2009, 15:05
  4. Пошаговое выполнение
    от FVG-8 в разделе ПЛК1хх
    Ответов: 7
    Последнее сообщение: 02.09.2008, 09:17

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •