Страница 2 из 3
Помогите реализовать
Добавлено: 13 мар 2020, 04:10
edyapd
[ref]DanilaWERT[/ref], у вас в проекте вроде как использовались часы реального времени. Ну так с их помощью и высчитывайте включение и отключение.
Помогите реализовать
Добавлено: 13 мар 2020, 06:49
Phazz
[ref]DanilaWERT[/ref], за генераторы не волнуйтесь, они не грузят контроллер.
Помогите реализовать
Добавлено: 13 мар 2020, 15:34
DanilaWERT
[ref]edyapd[/ref], вот что получилось..вроде должно работать..
Помогите реализовать
Добавлено: 13 мар 2020, 18:08
edyapd
[ref]DanilaWERT[/ref], вам принципиально отключать именно в 23:00?
Я бы сделал несколько по другому. Сохранил бы в ЕЕПРОМ день старта. При помощи ЧРВ высчитывал количество дней. Отключал бы в 00:00, на заданное количество минут. При этом абсолютно не нужно переводить часы-минуты в минуты, а потом обратно в часы, да ещё следом и в String.
Полностью вашу реализацию не анализировал, но просто представьте такую ситуацию, что МК сбойнул за несколько секунд до того, как "Номер дня" должен был бы быть сохранённым в ЕЕПРОМ. А полностью перезагрузился в 00:01. Получается, что этот день у вас будет пропущен. Мизирная, но тем не менее вероятность существует.
Помогите реализовать
Добавлено: 13 мар 2020, 18:31
DanilaWERT
[ref]edyapd[/ref], что такое ЧРВ?
edyapd писал(а): 13 мар 2020, 18:08
[ref]DanilaWERT[/ref], вам принципиально отключать именно в 23:00?
Не принципиально конечно,но так будет лучше. ))
Я смотрел ваш скетч 112.Там TON при перезагрузке тоже перезапустится..мое мнение.
edyapd писал(а): 13 мар 2020, 18:08
[ref]
Полностью вашу реализацию не анализировал, но просто представьте такую ситуацию, что МК сбойнул за несколько секунд до того, как "Номер дня" должен был бы быть сохранённым в ЕЕПРОМ. А полностью перезагрузился в 00:01. Получается, что этот день у вас будет пропущен. Мизирная, но тем не менее вероятность существует.
Я немного здесь не правильно написал..У меня не день сохраняется посути,а время (будем говорить) начала.А потом уже высчитывается день.
Помогите реализовать
Добавлено: 14 мар 2020, 08:38
edyapd
DanilaWERT писал(а): 13 мар 2020, 18:31
что такое ЧРВ?
Часы Реального Времени
Вот такой проект у меня получился. Не знаю, все ли входящие условия я понял правильно.
При нажатии на кнопку Старт, устройство дожидается перехода 00:00 и включает свет. При этом можно сделать рестарт устройства в любое время, снова нажав на Старт.
Первое выключение происходит по истечении 4 дней, на один час. Далее каждый день прибавляет по 20 минут.
На третью плату сделал вход по условия. Таким образом, она будет выполняться раз в минуту. И у вас останется ещё много времени для всего остального (если требуется)
111.flp
Помогите реализовать
Добавлено: 15 мар 2020, 00:39
DanilaWERT
edyapd писал(а): 14 мар 2020, 08:38
DanilaWERT писал(а): 13 мар 2020, 18:31
что такое ЧРВ?
Часы Реального Времени
Вот такой проект у меня получился. Не знаю, все ли входящие условия я понял правильно.
При нажатии на кнопку Старт, устройство дожидается перехода 00:00 и включает свет. При этом можно сделать рестарт устройства в любое время, снова нажав на Старт.
Первое выключение происходит по истечении 4 дней, на один час. Далее каждый день прибавляет по 20 минут.
На третью плату сделал вход по условия. Таким образом, она будет выполняться раз в минуту. И у вас останется ещё много времени для всего остального (если требуется)
111.flp
Так я и не понял как плата№3 работает...(( При любом дне На блок попадания приходит 1ч20 мин.
Помогите реализовать
Добавлено: 15 мар 2020, 05:37
edyapd
[ref]DanilaWERT[/ref], что за блок "попадания"? И как вы проверяете, что туда приходит?
Помогите реализовать
Добавлено: 15 мар 2020, 17:33
DanilaWERT
[ref]edyapd[/ref],
edyapd писал(а): 15 мар 2020, 05:37
[ref]DanilaWERT[/ref], что за блок "попадания"? И как вы проверяете, что туда приходит?
Time inside....И у меня почему то не работает детектор изменения числа.Подключил блок дисплея как на рисунке.На дисплей приходит,а вот после детектора ничего не происходит.
Помогите реализовать
Добавлено: 15 мар 2020, 19:11
edyapd
[ref]DanilaWERT[/ref], да, прошу прощения, накосячил немного.
Вот так вот проверьте
111_2.flp
DanilaWERT писал(а): 15 мар 2020, 17:33
И у меня почему то не работает детектор изменения числа
Так вы не увидите его работу. Там "1" появляется от нескольких мкс, до нескольких сот микросекунд. Если хотите анализировать подобным образом, то поставьте перед дисплеем ТТ-триггер, тогда будете видеть одну минуту "1", а другую "0".
Помогите реализовать
Добавлено: 16 мар 2020, 00:59
DanilaWERT
[ref]edyapd[/ref], Спасибо большое за подсказки.Собрал вот так..Вроде все работает как надо мне.Проверил.Ваша логика вычисления паузы в освещении сэкономила мне 5% памяти устройства.
Помогите реализовать
Добавлено: 16 мар 2020, 05:38
edyapd
[ref]DanilaWERT[/ref], глянул по рисунку. Если вы отнимаете в итоге один час, то его можно просто не прибавлять. Уберите блок "Сложение" (60+I2) и подайте с блока "Умножение" (I1*20) сразу на блок деления. И тогда блок "Вычитание", который вы добавили, можно убрать.
Помогите реализовать
Добавлено: 17 мар 2020, 00:06
DanilaWERT
[ref]edyapd[/ref], еще раз спасибо.Буду дальше делать.. ))
Отправлено спустя 2 часа 48 минут 44 секунды:
Вообще хочу так сделать.NodeMCU будет типа сервера.В ней часы,кнопки,дисплей.Меню для всех 4 Pro mini.Выбираю в меню устройство,корректирую установки...Изменяется переменная и передается на исполнительную плату,также передается время.Ну и плата управляет своей периферией. Также плата по запросу будет отдавать данные с датчиков для вывода на дисплей.В случае срабатывания "АВАРИИ" сервер пошлет СМС. Как то так...Переменных правда до фига получается..
Будет так работать? ))) Жду критику и советы..
Помогите реализовать
Добавлено: 17 мар 2020, 05:59
edyapd
DanilaWERT писал(а): 17 мар 2020, 00:06
Будет так работать? ))) Жду критику и советы..
При правильном построении всё будет работать. С RS-485 никогда не пытался чего-либо делать, тут подсказать не могу.
А вот про основное устройство скажу так. Аппетит приходит во время еды. И вам со временем захочется подключить это, а потом вот это, а ещё и вот это. А потому, лучше сразу задуматься, чтобы сделать дальнейшее развитие беспроблемным. Могу посоветовать купить Raspberry, хотя у меня пока и на Orange Pi PC+ всё получалось. Установить на него IOBroker(или нечто подобное). И собирать там все данные с внешних устройств.
Помогите реализовать
Добавлено: 18 мар 2020, 01:12
DanilaWERT
[ref]edyapd[/ref], пока так.. бабосиков нет ))) Да и нечего туда впринципе больше подключать будет.Это у меня "хлев",а в нем грибы,несушки,бройлеры,брудер,инкубатор.
Отправлено спустя 3 часа 38 минут 39 секунд:
Почему у меня в часах 3 часа,а переменная Start2 TRUE?По умолчанию она FALSE.Если поменять в блоке сравнения например на I1 меньше чем I2,то все норм..Это какая то особенность?Всю бошку уже сломал..
Помогите реализовать
Добавлено: 18 мар 2020, 07:09
edyapd
Не совсем понял, что вы имеете ввиду. Из проекта вижу, что в 0 часов у вас происходит запись в ЕЕПРОМ 1 по адресу СБРОС.
В дальнейшем по этому адресу можно записать 0 при условии, что на данный момент не 0 часов и пришёл сигнал со входа ССС.
Помогите реализовать
Добавлено: 18 мар 2020, 14:18
nikmotorin60
По моему использование с выхода часов номера дня недели упростит решение задачи. Посмотрите мой вариант.
Помогите реализовать
Добавлено: 18 мар 2020, 22:04
DanilaWERT
edyapd писал(а): 18 мар 2020, 07:09
Не совсем понял, что вы имеете ввиду. Из проекта вижу, что в 0 часов у вас происходит запись в ЕЕПРОМ 1 по адресу СБРОС.
В дальнейшем по этому адресу можно записать 0 при условии, что на данный момент не 0 часов и пришёл сигнал со входа ССС.
Совершенно верно.Так и задумывалось.Но почему то не работает так..
На часах было точно не 0 часов,по-моему 3..Загружаю скетч.Сразу в еепром ставится 1.Нажимаю на кнопку CCC.В еппром записывается 0.Перезагружаю контроллер.И опять в еепром 1.
Вот добавил дисплеи для наглядности и установку часа.На дисплее 2 часа,а после сброса и перезагрузки в еепром опять 1 !!!
причем если на I1 блока сравнения установить константу большую чем 0,то все работает как надо.Приделал кнопку для изменения переменной.Все работает на ура.От часов блин не хочет..
Помогите реализовать
Добавлено: 18 мар 2020, 22:26
DanilaWERT
nikmotorin60 писал(а): 18 мар 2020, 14:18
По моему использование с выхода часов номера дня недели упростит решение задачи. Посмотрите мой вариант.
Не,под мою задачу не сильно подходит.
Помогите реализовать
Добавлено: 19 мар 2020, 04:57
edyapd
[ref]DanilaWERT[/ref], присмотритесь к дисплею, который показывает часы, повнимательней. Скорей всего он после перезагрузки, на доли секунды, показывает "0".
Получается, что часы ещё не успели ответить, а значение уже записывается в ЕЕПРОМ. Значит нужна задержка на пару секунд, после старта, прежде чем брать данные с часов.