Просмотр полной версии : ПР200 Сброс счетчика при смене суток.
Может быть у кого то была подобная задача, которую вы решили?
Необходимо считать сколько раз отработала рецептура. Сосчитать проблем нет, но не могу придумать как сбрасывать это значение.
Нужно хранить это значение до конца рабочего дня который может настать как в 17.00 так и в 23.00, когда работа начнется тоже не известно. Напряжение на ночь и праздники отключается.
Логично что сбрасываем счетчик при изменении переменной "дата" относительно какого то прошлого значения.
А можно поставить True -> r_trig -> move "Дата" в энергонезависимую переменную, потом сравнивать с "Дата" и если не равно то сбрасывать счетчик. Будет ли это работать? Получается перезапись будет при включении.
Сначала написал, потом подумал. Сперва нужно сравнить потом перезаписать энергонезависимую. Проверить пока не могу на компьютере linux.
Василий Кашуба
12.05.2017, 14:01
Сначала написал, потом подумал. Сперва нужно сравнить потом перезаписать энергонезависимую. Проверить пока не могу на компьютере linux.
Всё гораздо проще, ни каких сравнений и энергонезависимых переменных, в момент смены даты, обнуляете счётчик и всё.
Сергей0308
12.05.2017, 14:15
Так у него в это время ПР может быть обесточено! Но проблема решаемая!
Василий Кашуба
12.05.2017, 14:17
Так у него в это время ПР может быть обесточено! Но проблема решаемая!
Это не проблема, так как при обесточивании, счётчик и так сбросится.
Сергей0308
12.05.2017, 14:54
Это не проблема, так как при обесточивании, счётчик и так сбросится.
Тогда получается полное отсутствие проблемы, если ПР на ночь выключается, сделать счётчик не энергонезависимым и всё!
Ревака Юрий
12.05.2017, 14:57
Тогда получается полное отсутствие проблемы, если ПР на ночь выключается, сделать счётчик не энергонезависимым и всё!
Да, но проблема может возникнуть при отключении питания в течении дня, я бы сохранял еще и номер дня, а после включения проверял, если номер дня не равен сохраненному, обнулил бы счетчик и перезаписал номер дня.
Сергей0308
12.05.2017, 17:07
Да, но проблема может возникнуть при отключении питания в течении дня, я бы сохранял еще и номер дня, а после включения проверял, если номер дня не равен сохраненному, обнулил бы счетчик и перезаписал номер дня.
Наверно так лучше, тогда счётчик делаем энергонезависимым в другую, тоже энергонезависимую переменную пишем число месяца, например раз в минуту(на 30 секунде) при включение если числа не равны, сбрасываем счётчик, всё!
Василий Кашуба
12.05.2017, 18:22
Наверно так лучше, тогда счётчик делаем энергонезависимым в другую, тоже энергонезависимую переменную пишем число месяца, например раз в минуту(на 30 секунде) при включение если числа не равны, сбрасываем счётчик, всё!
А зачем дату писать раз в минуту? Достаточно при пропадании питания писать, а при включении питания сравнивать.
Сергей0308
14.05.2017, 01:53
А зачем дату писать раз в минуту? Достаточно при пропадании питания писать, а при включении питания сравнивать.
Вдруг забудут выключить на ночь или заработаются без праздников и выходных в 3 смены, короче прибор должен работать не только в "ненормальных" условиях, но и в нормальных! Условия, что в день по нескольку раз выключается тоже не было! Лучше наверно писать при включении после сравнения и при смене дня!
Вот мой вариант:
31126
На всякий случай таймер поставил, вдруг при включении какие переходные процессы?!
Спасибо, сделал по вашему образцу.
А чем не нормален режим, что прибор периодически отключают?
Программируемое реле само по себе отличное, большой вычислительный потенциал, аналоговые входы/выходы, дисплей, размер, цена... Но вот среда программирования ((( Даже когда понимаешь как решить ту или иную задачу нужно еще придумать как сделать это в Owen logic
Василий Кашуба
15.05.2017, 11:04
...Программируемое реле само по себе отличное, большой вычислительный потенциал, аналоговые входы/выходы, дисплей, размер, цена... Но вот среда программирования ((( Даже когда понимаешь как решить ту или иную задачу нужно еще придумать как сделать это в Owen logic
Если вы знаете схемотехнику и булеву алгебру, то ничего придумывать как сделать это в Owen logic, не нужно. Просто рисуете "картину", как художник и всё.
Если вы знаете схемотехнику и булеву алгебру, то ничего придумывать как сделать это в Owen logic, не нужно. Просто рисуете "картину", как художник и всё.
Я в нескольких проектах искал команду "Move" нужно было переход условный сделать, решал проблему в обход. Потом на форуме увидел, что это делают командой "Sel"
Вот в формате ПР110 среда меня устраивает там само железо не даст сделать что то сложное. А в 200 вроде и мощь но работать не удобно. Но я все равно благодарен компании за их разработку, для мелких проектов и не очень щедрых заказчиков самое то. На дисплее написал, светодиодами поморгал, цену сказал, заказчик сразу готов поменять и без того рабочее на новое.
Василий Кашуба
15.05.2017, 14:43
Я в нескольких проектах искал команду "Move" нужно было переход условный сделать, решал проблему в обход. Потом на форуме увидел, что это делают командой "Sel"
А для булевых переменных командой "AND".
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot