Deriv()

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Автор
    Сообщения
  • #34807
    Oleg
    Участник

    Здравствуйте. Небольшой вопрос.
    SCADA 6.3, функция Deriv(), тестовый проект.
    Не ясно, почему функция работает с каналом Simulator — Sine, а с каналом Simulator — Triangle нет (вместо значения —).

    Еще один вопрос: какая точность этой функции, в смысле разность времени берется до мс?

    Я правильно написал — что если канал №117 счетчик 1-10 в цикле, то канал №118 будет брать производную за 5 секунд или нет?
    Канал №117: EverySec( () => (Val()==10 || Val() == double.NaN) ? 1 : Val()+1)
    Канал №118: EverySec( () => Val(117)==5 ? (Deriv(101)*1000) : Val())

    Подскажите пожалуйста.

    #34815
    Mikhail
    Модератор

    Добрый день!
    Выведите значение функции Deriv в отдельные каналы, чтобы проверить её работу.
    Значение высчитывается на основе поступающих от Коммуникатора данных. То есть моменты расчёта зависит от того, когда Коммуникатор передаёт новые данные.

    Вместо Val() == double.NaN лучше написать double.IsNaN(Val()), а ещё лучше проверить статус канала.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Для ответа в этой теме необходимо авторизоваться.