PDA

Просмотр полной версии : Создание таймера в среде OWEN Logic



Илья2282
11.09.2023, 00:33
Здравствуйте,может пожалуйста кто-то подсказать как создать таймер для того чтобы подсчитать время работы компрессора?Не нашёл подходящих блоков для этой задачи ни в базовом пакете,ни в онлайн базе.Пытался написать себе под эту задачу функциональный блок на языке ST, но это не выходит из-за ограниченного наличия функций под эту задачу(нереализована функция TIME).

Сергей0308
11.09.2023, 02:04
Здравствуйте,может пожалуйста кто-то подсказать как создать таймер для того чтобы подсчитать время работы компрессора?Не нашёл подходящих блоков для этой задачи ни в базовом пакете,ни в онлайн базе.Пытался написать себе под эту задачу функциональный блок на языке ST, но это не выходит из-за ограниченного наличия функций под эту задачу(нереализована функция TIME).

Здесь посмотрите в посте #170: https://owen.ru/forum/showthread.php?t=33720&page=17
Хотя изначально создавалось не для таких целей, в принципе можно использовать и для вашей задачи без изменений!

Dimensy
11.09.2023, 06:01
А чем вас не устраивает макрос OperTimer_ из менеджера компонентов?

FPavel
11.09.2023, 20:46
Только внимательно читайте справку к OperTimer - учёт времени наработки ведётся в минутах, а не в чч:мм (т.е. количество минут на выходе OperTimer будет расти от 0 до ~4_000_000_000, а не до 59).

C.Pavel
11.09.2023, 21:35
70148
счетчик наработки с выводом минут и часов

kondor3000
11.09.2023, 22:08
Опер таймер безбожно врёт, по моим наблюдениям за 4 мин и 4 включения до 5 сек
Вот таймер наработки ( хватит на 136 лет) с памятью, секундами и сбросом 70149
Как сбрасывать на скрине.

Сергей0308
12.09.2023, 01:45
Опер таймер безбожно врёт, по моим наблюдениям за 4 мин и 4 включения до 5 сек
Вот таймер наработки ( хватит на 136 лет) с памятью, секундами и сбросом 70149
Как сбрасывать на скрине.

Мне кажется, для универсальности надо и предустановку сделать, в смысле, бывает просят такое на форуме!

kondor3000
12.09.2023, 08:28
Мне кажется, для универсальности надо и предустановку сделать, в смысле, бывает просят такое на форуме!

Есть и такой вариант, Таймер Наработки на 136 лет с установкой Времени наработки 70157

Такой таймер можно использовать как наработку и как таймер реального времени, для ПР103 и ПР205, у которых нет в симуляции часов.
Разница видна на скрине, Наработка продолжает считать после 24 сасов, а реальное время сбрасывается и начинается с 0.
Здесь уже выкладывал скрин суточного таймера https://owen.ru/forum/showthread.php?t=37840&page=15#149

melky
12.09.2023, 08:49
Если под секунды использовать 1 байт (или сколько там бит под число 59 потребуется). а под часы и минуты 3 байта то получим 9999999 часов и 59 минут что будет равно числу 10003539 - ы HEX 98 A4 53 (даже не заполнилось до FF FF FF
а 9999999 это куда больше 136 лет

:) фокус покус такой... всего в 4-х байтах.
косякнул, в обратную сторону потом не посчитать :)

MACTEP-RH
12.09.2023, 16:06
Все микроконтроллеры идут с ограниченным циклом перезаписи. И хоть производитель гарантирует 1 млн циклов, Не стоит перебарщивать. Надо в память писать только часы, а минуты просто помнить в оперативке (в переменной). Час заполнился, сохранили. Этот способ плох тем, что при выключении питания, все недочасы сбросятся. Можно помнить и минуты, но секунды - это уже извращение.

Dimensy
12.09.2023, 16:15
Все микроконтроллеры идут с ограниченным циклом перезаписи. И хоть производитель гарантирует 1 млн циклов, Не стоит перебарщивать. Надо в память писать только часы, а минуты просто помнить в оперативке (в переменной). Час заполнился, сохранили. Этот способ плох тем, что при выключении питания, все недочасы сбросятся. Можно помнить и минуты, но секунды - это уже извращение.

А. У некоторых ПЛК есть область памяти, которая питается от батарейки
Б. У ПРки запись в постоянную память производится при отключении питания

Сергей0308
14.09.2023, 12:39
Все микроконтроллеры идут с ограниченным циклом перезаписи. И хоть производитель гарантирует 1 млн циклов, Не стоит перебарщивать. Надо в память писать только часы, а минуты просто помнить в оперативке (в переменной). Час заполнился, сохранили. Этот способ плох тем, что при выключении питания, все недочасы сбросятся. Можно помнить и минуты, но секунды - это уже извращение.

Ничего там не сбросится, в смысле, если предварительный счётчик-делитель будет с энергонезависимостью, например счётчик СТ из ОЛ обладает такими свойствами!
Тогда и диапазона 16-битного счётчика из ОЛ хватит почти на 7,5 лет непрерывной работы, что в принципе достаточно, в смысле, достаточно смотреть не реже раза в семь лет, чтобы "круг" не пропустить! При большой наработке, как в данном случае, для особо замороченных можно в младший значащий разряд счётчика писать не часы, а десятки часов, тогда хватит на весь срок службы, почти на 75 лет! Минуты и секунды здесь не нужны и даже вредны, в смысле, удобнее будет по сети одним регистром передавать!