Суточный таймер. Как сделать?
Суточный таймер. Как сделать?
slavas, ну да блок похожий но, как я понял, переход через 00:00 у вас не работает.
Добавлено (27.09.2016, 18:46)
---------------------------------------------
Да и к тому же, привел свой работающий вариант, а нужен они или нет, пусть другие смотрят.
Добавлено (27.09.2016, 18:46)
---------------------------------------------
Да и к тому же, привел свой работающий вариант, а нужен они или нет, пусть другие смотрят.
Суточный таймер. Как сделать?
Это да, чем больше вариантов решения тем проще учиться. А про мой блок только щас задумался.
- AlexRyzh
- Сержант
- Сообщения: 107
- Зарегистрирован: 22 дек 2015, 11:06
- Откуда: Мелитополь
- Контактная информация:
Суточный таймер. Как сделать?
Лично мне не понятно как работать с этой схемой.eugeneb писал(а):Я уже в двух своих проектах использую такую схему
У меня сделано так: На экране ввода времени включения, я ввожу 2330 (т.е. включить в 23 часа 30 мин). То же самое и ввод отключения 215 (отключить в 2 часа 15 мин)
Для сравнения с текущим временем из модуля реального времени я получаю в переменную число, часы * 100 + минуты. Т.е. я получаю тот вид времени, который ввожу для контроля. По моему очень удобно.
В Вашем случае часы * 60 + минуты. Это 23:30 будет выглядеть не как 2330, а 1410. Так какую циферию загонять в память, если нужно включить в 23:30? Нужно ввести 1410 чтоб таймер работал как нужно?
А если мне нужно изменить на 22:15 включение, то нужно доставать калькулятор и высчитывать число, которое нужно ввести в память?
И я так понимаю этот блок для одного цикла Вкл-Откл? Если нужен еще цикл, то нужен такой же блок с другими параметрами Вкл.-Откл?
-
- Лейтенант
- Сообщения: 361
- Зарегистрирован: 07 сен 2015, 23:53
Суточный таймер. Как сделать?
Слимпер, slavas, ob`edinil washi bloki
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Суточный таймер. Как сделать?
Ну зачем калькулятор, отратно на часы и минуты это раскадируется так:AlexRyzh писал(а):А если мне нужно изменить на 22:15 включение, то нужно доставать калькулятор и высчитывать число, которое нужно ввести в память?
[spoiler=Спойлер][/spoiler]А там уже на экран можно вывести
Добавлено (27.09.2016, 20:29)
---------------------------------------------
А то, что надо сохранить как уставку, упаковывается так же как переменная ТВ из скриншота в сообщении 19
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- AlexRyzh
- Сержант
- Сообщения: 107
- Зарегистрирован: 22 дек 2015, 11:06
- Откуда: Мелитополь
- Контактная информация:
Суточный таймер. Как сделать?
В общем, почитав ветку, и благодаря вашим комментам, пришел к выводу, что сделать можно. И для себя "родил" такой метод:
Сделал блок проверки перехода через сутки. Входы - Вкл, Выкл и текущее время.

Блок проверяет, если время выключения меньше времени включения и при этом меньше текущего времени, то переменная выключения принимает значение 2400, что больше чем последняя минута суток 2359. Когда сутки меняются, то выставленное значение для отключения становится больше чем текущее время, и переменная не принимает значение 2400, а остается как назначено. ( в каждом цикле в переменную записывается установленное значение с памяти. Это в другой плате сделано, здесь не видно)
В итоге получается такая картинка:

Добавлено (27.09.2016, 21:13)
---------------------------------------------
Вот, например я подошел к устройству и решил изменить время включения (или выключения). Например было 21:17 ( а это 21*60+17=1277) Т.е чтоб включалось в 21:17, в память было забито число 1277)
И вот я решил изменить включение на 22:14. Как мне понять какое число ввести в память? Вычислять в уме? или калькулятор с собой носить? Как я должен узнать, что нужно ввести 1334, чтоб срабатывало в 22:14?
Или я что-то не понял? Что нужно ввести в память (ячейку включения), чтоб включение произошло именно в 22:14?
По моему умножение часов на 100 решает эту проблему. Для ввода включения в 22:14 вводим значение для переменной 2214!
Сделал блок проверки перехода через сутки. Входы - Вкл, Выкл и текущее время.

Блок проверяет, если время выключения меньше времени включения и при этом меньше текущего времени, то переменная выключения принимает значение 2400, что больше чем последняя минута суток 2359. Когда сутки меняются, то выставленное значение для отключения становится больше чем текущее время, и переменная не принимает значение 2400, а остается как назначено. ( в каждом цикле в переменную записывается установленное значение с памяти. Это в другой плате сделано, здесь не видно)
В итоге получается такая картинка:

Добавлено (27.09.2016, 21:13)
---------------------------------------------
Вы видимо неправильно поняли вопрос. Перевести обратно не проблема. Дело в другом.OlegAn1962 писал(а):Ну зачем калькулятор, отратно на часы и минуты это раскадируется так:
Вот, например я подошел к устройству и решил изменить время включения (или выключения). Например было 21:17 ( а это 21*60+17=1277) Т.е чтоб включалось в 21:17, в память было забито число 1277)
И вот я решил изменить включение на 22:14. Как мне понять какое число ввести в память? Вычислять в уме? или калькулятор с собой носить? Как я должен узнать, что нужно ввести 1334, чтоб срабатывало в 22:14?
Или я что-то не понял? Что нужно ввести в память (ячейку включения), чтоб включение произошло именно в 22:14?
По моему умножение часов на 100 решает эту проблему. Для ввода включения в 22:14 вводим значение для переменной 2214!
Последний раз редактировалось AlexRyzh 27 сен 2016, 21:16, всего редактировалось 1 раз.
Суточный таймер. Как сделать?
так вводить надо часы и минуты, а блок сам часы переведёт в минуты и прибавит минуты, время получится в минутах.
Суточный таймер. Как сделать?
AlexRyzh, хорошо, что нашил для себя удобный для себя вариант, это главное.
А slavas, все правильно написал, у меня отдельно выставляются минуты и часы, а программа, переводит и записывает в память, так что пользователь этого даже не видит.
Добавлено (28.09.2016, 04:36)
---------------------------------------------
Если не лень можете посмотреть мой проект Малая автоматизация выращивания цветов и рассады где по такому принципу сделано . Правда я его уже разобрал, и сделал другой. Надо как то написать статью.
Но как я уже писал выше, я его делал во времена когда не было еще пользовательских блоков, так что он громоздкий.
А slavas, все правильно написал, у меня отдельно выставляются минуты и часы, а программа, переводит и записывает в память, так что пользователь этого даже не видит.
Надеюсь не в EEPROM?AlexRyzh писал(а):в каждом цикле в переменную записывается установленное значение с памяти.
Добавлено (28.09.2016, 04:36)
---------------------------------------------
Если не лень можете посмотреть мой проект Малая автоматизация выращивания цветов и рассады где по такому принципу сделано . Правда я его уже разобрал, и сделал другой. Надо как то написать статью.
Но как я уже писал выше, я его делал во времена когда не было еще пользовательских блоков, так что он громоздкий.
- AlexRyzh
- Сержант
- Сообщения: 107
- Зарегистрирован: 22 дек 2015, 11:06
- Откуда: Мелитополь
- Контактная информация:
Суточный таймер. Как сделать?
Так я написал "С ПАМЯТИ", а не в память Т.е. читает из EEPROM, а не записывает.Слимпер писал(а):Надеюсь не в EEPROM?
Не стал я заморачиваться с таким вводом. Это дополнительный код... лишняя нагрузка на проц (а проц Нано...) Лишние блоки...Слимпер писал(а):у меня отдельно выставляются минуты и часы, а программа, переводит и записывает в память
Делал для себя, а мне и так понятно, что для ввода времени нужно вводить цифры, соответствующие времени. И кода меньше, и мне понятно и удобно
- AlexRyzh
- Сержант
- Сообщения: 107
- Зарегистрирован: 22 дек 2015, 11:06
- Откуда: Мелитополь
- Контактная информация:
Суточный таймер. Как сделать?
Проверил на практике такую "картинку", это не работает. Т.к. при достижении 0 часов, одно условие не выполняется (Выкл >=Вкл) и соответственно ровно в 0 часов выключаетсяAlexRyzh писал(а):В итоге получается такая картинка:
Спасибо Слимпер (пост 19), его блок действительно работает. Без проблем включение и выключение в указанное время, в том числе при переходе через 0 часов!
Сделал пользовательский блок, для удобства использования, единственное что изменил, это вместо компоратора больше поставил компоратор больше или равно. Иначе у меня почему-то включалось на минуту позже и выключалось на минуту позже указанного времени. Парадокс - но факт! При >= работает вовремя.
Блок прилагаю
[spoiler=Спойлер][/spoiler]
Всем огромное спасибо. Вопрос исчерпан полностью. Блок работает безупречно!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось AlexRyzh 28 сен 2016, 12:50, всего редактировалось 1 раз.
Суточный таймер. Как сделать?
Ну так условие выполняется, заданное время равно а в компараторе больше, вот и срабатывает на минуту позже. Вы сделали в компараторе равно и стало как надо.
Суточный таймер. Как сделать?
У меня вопрос. На вход "Время суток" в каком формате подаются данные? Имею ввиду часы+минуты, или все надо через матем. блоки пропускать умножая на 60 и т.д.?
Последний раз редактировалось Max 16 дек 2016, 07:26, всего редактировалось 1 раз.
Суточный таймер. Как сделать?
Подскажите новичку. Сделал таймер на включение и выключение света по таймеру. Но нужно добавить датчик света. т.е принцип такой: установлено время включения в 9-00 и отключение в 17-00 но если на датчике света больше 200 Lx то свет не включается, но если во время которое установлено на вкл и выкл на датчике света будет меньше 200Lx то включится свет и отключится по таймеру.
Суточный таймер. Как сделать?
вот файл
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось nick73 16 дек 2016, 11:33, всего редактировалось 1 раз.
- rw6cm
- Полковник
- Сообщения: 2372
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 41 раз
Суточный таймер. Как сделать?
[spoiler=Спойлер][/spoiler]nick73 писал(а):вот файл
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
Суточный таймер. Как сделать?
Какое максимальное количество суточных таймеров может быть в одном проекте?
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя