Накопление времени включения бита - как оптимальнее?

Работа с панелями оператора Weintek - подключение, программирование, совмещение с ПЛК

Модераторы: kiv, 8bit, VanMo

Накопление времени включения бита - как оптимальнее?

Сообщение i.miroshnichenko » 03 фев 2022, 15:15

Всем доброго времени суток!
Как можно реализовать накопление времени?
К примеру, необходимо замерять время горения форсунки за месяц, она может находиться в двух состояниях "вкл" и "выкл", используется битовая адресная метка.
Есть ли встроенные средства для накопления времени по включениям бита?
И если можно только через макрос - какой алгоритм будет оптимальным по производительности?
Триггер на включение бита и суммирование секунд через макрос - пойдет?
Или лучше макрос, тикающий каждую секунду: проверить, включен ли бит -> если включен, то прибавить прибавить счетчик секунд?
Используется панель cMT2108X.
i.miroshnichenko
 
Сообщения: 19
Зарегистрирован: 23 дек 2021, 18:13

Re: Накопление времени включения бита - как оптимальнее?

Сообщение ArtemPM » 03 фев 2022, 15:30

i.miroshnichenko писал(а):Всем доброго времени суток!
Как можно реализовать накопление времени?
К примеру, необходимо замерять время горения форсунки за месяц, она может находиться в двух состояниях "вкл" и "выкл", используется битовая адресная метка.
Есть ли встроенные средства для накопления времени по включениям бита?
И если можно только через макрос - какой алгоритм будет оптимальным по производительности?
Триггер на включение бита и суммирование секунд через макрос - пойдет?
Или лучше макрос, тикающий каждую секунду: проверить, включен ли бит -> если включен, то прибавить прибавить счетчик секунд?
Используется панель cMT2108X.

Вы же сами знаете ответ, зачем задаете лишние вопросы? Неужели у вас такой нагруженный проект, что необходимо бороться за доли процента производительности?
Любой из этих вариантов панель прожуёт не задумываясь, поэтому просто используйте тот вариант, который вам удобен.
ArtemPM
 
Сообщения: 200
Зарегистрирован: 14 апр 2021, 05:16

Re: Накопление времени включения бита - как оптимальнее?

Сообщение dimensy » 04 фев 2022, 17:47

Как вариант
1. Через триггер определить включение горелки и запомнить время.
2. Через триггер определить выключение горелки и из текущего времени вычесть запомненное
dimensy
 
Сообщения: 207
Зарегистрирован: 14 мар 2018, 17:54

Re: Накопление времени включения бита - как оптимальнее?

Сообщение i.miroshnichenko » 07 фев 2022, 10:26

ArtemPM писал(а):Вы же сами знаете ответ, зачем задаете лишние вопросы? Неужели у вас такой нагруженный проект, что необходимо бороться за доли процента производительности?
Любой из этих вариантов панель прожуёт не задумываясь, поэтому просто используйте тот вариант, который вам удобен.


Нет, проект пока не сильно нагружен, и не раздут, скомпилированный весит 6.2МБ. Но он будет расти, т.к. на его основе будут последующие проекты.
Я только начинаю разбираться с панелью, поэтому ищу "бест практис" и встроенные средства, вдруг кто-то уже сталкивался.
i.miroshnichenko
 
Сообщения: 19
Зарегистрирован: 23 дек 2021, 18:13

Re: Накопление времени включения бита - как оптимальнее?

Сообщение 8bit » 07 фев 2022, 10:37

i.miroshnichenko писал(а):
Я только начинаю разбираться с панелью, поэтому ищу "бест практис" и встроенные средства, вдруг кто-то уже сталкивался.


Встроенное есть только для подсчета энергии (вкладка IIoT/Энергетика, глава 41.Energy в Руководстве пользователя EasyBuilder Pro)
Поэтому используйте любую подходящую "практис" .....
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1180
Зарегистрирован: 20 апр 2020, 19:07

Re: Накопление времени включения бита - как оптимальнее?

Сообщение i.miroshnichenko » 08 фев 2022, 10:14

dimensy писал(а):Как вариант
1. Через триггер определить включение горелки и запомнить время.
2. Через триггер определить выключение горелки и из текущего времени вычесть запомненное


Да, как теоретический вариант возможно. Но в моем проекте реализована возможность смены системного времени через интерфейс (требование заказчика), поэтому такой способ может привести к неопределенному поведению.
Все равно спасибо за совет!
i.miroshnichenko
 
Сообщения: 19
Зарегистрирован: 23 дек 2021, 18:13

Re: Накопление времени включения бита - как оптимальнее?

Сообщение 8bit » 08 фев 2022, 10:22

i.miroshnichenko писал(а):
dimensy писал(а):Как вариант
1. Через триггер определить включение горелки и запомнить время.
2. Через триггер определить выключение горелки и из текущего времени вычесть запомненное


Да, как теоретический вариант возможно. Но в моем проекте реализована возможность смены системного времени через интерфейс (требование заказчика), поэтому такой способ может привести к неопределенному поведению.
Все равно спасибо за совет!


Раз в минуту запускайте макрос который инкриминирует некий счетчик минут и тут же может вычислять из них часы, года.... без привязки к абсолютному времени ....
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1180
Зарегистрирован: 20 апр 2020, 19:07

Re: Накопление времени включения бита - как оптимальнее?

Сообщение dimensy » 08 фев 2022, 21:18

Тогда вопрос, LW-9030 - системное время отличается от местного времени (остальные регистры)?
dimensy
 
Сообщения: 207
Зарегистрирован: 14 мар 2018, 17:54

Re: Накопление времени включения бита - как оптимальнее?

Сообщение ArtemPM » 09 фев 2022, 03:50

dimensy писал(а):Тогда вопрос, LW-9030 - системное время отличается от местного времени (остальные регистры)?

LW9030 - это по сути UPTIME, то есть счетчик работы системы с момента последнего включения. При каждом запуске системы счет начинается с ноля.
ArtemPM
 
Сообщения: 200
Зарегистрирован: 14 апр 2021, 05:16

Re: Накопление времени включения бита - как оптимальнее?

Сообщение 8bit » 09 фев 2022, 10:41

i.miroshnichenko писал(а):Как можно реализовать накопление времени?


тут интереснее вопрос: как вы защитите этот счетчик от скрутки/обнуления ?
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1180
Зарегистрирован: 20 апр 2020, 19:07

След.

Вернуться в Weintek

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 9