Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 15 из 15

Тема: Включение и выключение освещения по времени на спк207

  1. #11

  2. #12
    Пользователь Аватар для vinam
    Регистрация
    28.04.2012
    Адрес
    Россия
    Сообщений
    35

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    usiGetHour - текущий час - он не может быть одновременно >=22 и <=6 - а вы условия через оператор AND объединили.
    Евгений, это я понимаю, я не понимаю как сделать так как мне нужно)) Просто начал свой вопрос с самого начала, чтоб была понятна моя проблема
    Никто не умеет так хорошо жить, как не умею я...

  3. #13
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Цитата Сообщение от vinam Посмотреть сообщение
    Евгений, это я понимаю, я не понимаю как сделать так как мне нужно)) Просто начал свой вопрос с самого начала, чтоб была понятна моя проблема
    превести время в UNIX-время и следить за разницей миллисекунд(просто секунд), от начала до текущего и сравнивать с заданным
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  4. #14
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,823

    По умолчанию

    Цитата Сообщение от vinam Посмотреть сообщение
    В этом я то и запутался, это условие работает когда уставки вкл./выкл. в пределах суток от 0-00 до 23-59
    bFlagTimePRG := usiGetHour >= 1 AND usiGetMinute >= 15 AND usiGetHour <= 6 AND usiGetMinute <= 30;

    А когда включить нужно в конце одного дня, а выключить на следующий, это условие уже не подходит
    bFlagTimePRG := usiGetHour >= 22 AND usiGetMinute >= 30 AND usiGetHour <= 6 AND usiGetMinute <= 30;
    Обобщенно

    Код:
    (*собираем часы, минуты и секунды в одну кучу - в секунды*)
    time_on:=(on_Hour * 60 + on_Minute) * 60 + on_Second;	(*время включения*)
    time_of:=(of_Hour * 60 + of_Minute) * 60 + of_Second;		(*время отключения*)
    current_time:=(CurrentHour * 60 + CurrentMinute) * 60 + CurrentSecond;	(*текущее время*)
    IF	time_on <= time_of THEN
    	Enable:=current_time >= time_on AND current_time < time_of;
    ELSE
    	Enable:=NOT(current_time >= time_of AND current_time < time_on);
    END_IF
    Последний раз редактировалось petera; 10.12.2019 в 15:02.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  5. #15
    Пользователь Аватар для vinam
    Регистрация
    28.04.2012
    Адрес
    Россия
    Сообщений
    35

    По умолчанию

    Спасибо, всем!!!
    Никто не умеет так хорошо жить, как не умею я...

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. диммированние освещения на ПР100
    от login-l в разделе Программируемые реле
    Ответов: 1
    Последнее сообщение: 06.07.2015, 12:53
  2. Ответов: 6
    Последнее сообщение: 12.03.2013, 13:18
  3. Ответов: 12
    Последнее сообщение: 20.05.2011, 09:20
  4. включение аппарата по дате и времени с установкой в ип320
    от niklud19511 в разделе Панели оператора (HMI)
    Ответов: 4
    Последнее сообщение: 25.12.2010, 23:03
  5. Включение и Выключение ПЛК
    от Akop в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 02.06.2008, 20:02

Ваши права

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