1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

распределение времени

Ответить

Автор темы
makkipia
read only
read only
Сообщения: 2
Зарегистрирован: 12 июн 2019, 20:38
Имя: Максат

распределение времени

Сообщение makkipia »

Уважаемые программисты, Помогите начинающему пользователю софтов.
Вопрос такой.
Имеется устройство которое выдает данные по modbus протоколу (время выраженное в минутах, сутки = 1440 минут) на ПО Siemens WinCC. Нужно эти данные выразить без знаков в часах, минутах и секундах, подскажите пожалуйста как это сделать (ххх часы ххх минуты ххх секунды). Спасибо большое.

Parliament74
авторитет
авторитет
Сообщения: 813
Зарегистрирован: 16 ноя 2016, 11:33
Имя: Максим Владимирович
Страна: Россия
город/регион: Магнитогорск
Благодарил (а): 16 раз
Поблагодарили: 211 раз

распределение времени

Сообщение Parliament74 »

Создаёте три тэга: Time_tag_HH, Time_tag_MM, Time_tag_SS, плюсом к этому уже имеем значение времени от устройство в минутах - Time_tag_val (названия какие угодно делаете) и далее скриптиком уже берёте значение в минутах и начинаете его пилить:

1) Берём текущее значение времени Time_tag_val в минутах.
2) Делим на 60, целую часть ложим в Time_tag_HH.
3) Вычитаем из Time_tag_val значение Time_tag_HH*60 и ложим в Time_tag_MM.

Если устройство выдаёт время только в минутах, то секунды, наверное, только так получится считать:
при изменении Time_tag_val (т.е. прошла минута) - запускаете таймер, который ведёт счёт в пределах минуты до следующего изменения Time_tag_val (если вызов скрипта сделать по времени - например каждую секунду, то можно просто Time_tag_SS на единичку увеличивать при каждом вызове скрипта, а при изменении Time_tag_val - обнулять.

Автор темы
makkipia
read only
read only
Сообщения: 2
Зарегистрирован: 12 июн 2019, 20:38
Имя: Максат

распределение времени

Сообщение makkipia »

Спасибо большое попробую
Ответить

Вернуться в «WinCC»