Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Задание минут и секунд в TON таймер Codesys  (Прочитано 3905 раз)

Gorsky17

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Здравствуйте!
Каким образом из окна TM_calendar (только минуты и секунды) задавать значение в переменную типа Time таймера TON в codesys?

Nomad

  • Новичок
  • *
  • Сообщений: 27
    • Просмотр профиля
Re: Задание минут и секунд в TON таймер Codesys
« Ответ #1 : 25 Января 2024, 20:30:04 »
TON принимает значение в миллисекундах, если не ошибаюсь, тогда вызывайте скрипт по изменению данных календаря
Код: (delphi)
procedure Calendar1_OnDataChange(Sender_TM_Control);
begin
  "Ваша_переменная_в_OPC_Int32".Value := 1000*SecondOf(Calendar1.AsDateTime)+60000*MinuteOf(Calendar1.AsDateTime);
end.
« Изменён: 26 Января 2024, 10:31:17 от Simple-Scada »

Gorsky17

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Задание минут и секунд в TON таймер Codesys
« Ответ #2 : 26 Января 2024, 09:54:31 »
Спасибо. Все работает!

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3214
    • Просмотр профиля
    • Simple-Scada
Re: Задание минут и секунд в TON таймер Codesys
« Ответ #3 : 26 Января 2024, 10:30:39 »
Здравствуйте.

Если используется Simple-Scada 2.6.8.0 или выше, то скрипты можно не использовать. Например, если время задаётся через целочисленную переменную в миллисекундах, в диапазоне от 0 до 86400000, то у данной переменной можно выставить тип данных DateTime, шкалу 0..86400000 и масштабирование в визуальную шкалу 0..1. И эту переменную привязать к календарю.

Gorsky17

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Задание минут и секунд в TON таймер Codesys
« Ответ #4 : 26 Января 2024, 14:35:01 »
Эмпирическим путем подобрал следующую шкалу: 0..0.115767. При этом в codesys это выглядит вот так: