Mikhail

Созданные ответы форума

Просмотр 15 сообщений - с 5,281 по 5,295 (из 7,872 всего)
  • Автор
    Сообщения
  • Mikhail
    Модератор

    Может быть на ТРМ есть настройки, какое значение выдавать, в случае обрыва датчика?

    Mikhail
    Модератор

    Там вместо скриншотов были сайты каких-то магазинов.
    Нужно посмотреть, что показывает Коммуникатор в тегах при обрыве датчика. Если при этом связь по Modbus с контроллером установлена, то обычно отображается явно некорректное значение, например, большое отрицательное для целых чисел или NaN для вещественных.

    в ответ на: Объявление переменных в KpLogic #9904
    Mikhail
    Модератор

    Также члены класса становятся доступны при наследовании. Но насколько я понимаю, здесь наследование не требуется.

    в ответ на: Объявление переменных в KpLogic #9903
    Mikhail
    Модератор

    был способ в KpXXLogic объявить переменную так, чтобы она была не static но доступна в KpXXLogic, XXLogic1, XXLogic2

    Переменная, объявленная в классе KpXXLogic доступна внутри KpXXLogic.
    Чтобы она была доступна в других классах, её нужно туда передать при создании или после создания объекта другого класса.

    Mikhail
    Модератор

    На скриншоте все ответы ОК — обрывов связи не наблюдается.

    Mikhail
    Модератор

    В следующий раз за ссылки на сторонние ресурсы не по теме будет бан.

    в ответ на: Объявление переменных в KpLogic #9893
    Mikhail
    Модератор

    Здесь нужно мыслить в парадигме объектно-ориентированного программирования и всё встанет на свои места ))

    чтобы Коммуникатор ограничивал блоки данных каждого вызова dll, особенно учитывая, что он может вызывать библиотеки несколько раз и в несколько потоков

    Верно, Коммуникатор для каждого КП создаёт отдельный объект типа KpXXLogic, который Вы описываете в драйвере.

    в ответ на: Объявление переменных в KpLogic #9889
    Mikhail
    Модератор

    То есть в классах-обработчиках используются только локальные переменные в их методах и не используются поля и свойства класса.

    в ответ на: Объявление переменных в KpLogic #9888
    Mikhail
    Модератор

    Чтобы не запутаться, можно использовать такой подход: все основные классы и объекты, кроме KpXXLogic не должны хранить в себе данные, а должны только обрабатывать данные, которые им передаются при вызове методов. Объекты, хранящие данные должны быть объявлены внутри KpXXLogic. Но при этом понадобятся отдельные объекты, которые группируют и хранят данные для передачи в методы для обработки. То есть разделить хранение данных и обработку.

    в ответ на: Объявление переменных в KpLogic #9887
    Mikhail
    Модератор

    dll вся целиком разве не одна сборка ?

    Да, одна сборка. Переменная static будет общей для службы Коммуникатора.

    в ответ на: Объявление переменных в KpLogic #9886
    Mikhail
    Модератор

    Сейчас ни с того ни с сего прибор начинает слать больше байт чем должен, вааще в афиге….

    Это уже сам прибор неадекватно себя ведет, вероятно?

    в ответ на: Объявление переменных в KpLogic #9885
    Mikhail
    Модератор

    Я имел ввиду следующее:

    MyClass1 myObj1 = new MyClass1();
    MyClass2 myObj2 = new MyClass2();
    
    myObj1.ObrabotkaObjektaTipa2(myObj2);
    

    При вызове метода ObrabotkaObjektaTipa2 не происходит копирования объекта myObj2, а только передаётся ссылка на него.

    в ответ на: Контроль связи с устройством #9878
    Mikhail
    Модератор

    Чтобы светодиод реагировал на недостоверный статус, нужно для входного канала задать такую формулу:
    Cnl; Stat == 5 ? 0 : Stat

    Формула заменяет недостоверный статус на неопределенный. Это нужно только для реакции на отключение Коммуникатора.

    в ответ на: Контроль связи с устройством #9877
    Mikhail
    Модератор

    Добрый день!

    Если данные не будут поступать от Коммуникатора, то через заданное в настройках SCADA-Сервера время (5 минут по умолчанию) статус значений изменится на недостоверный. На схеме это будет видно, если использовать компонент Светодиод, а не Динамический рисунок.

    Но остановка Коммуникатора — это не нормальная ситуация пропадания связи. Пропала связь, когда Коммуникатор опрашивает устройство, а оно не отвечает.

    Mikhail
    Модератор

    Надо проверить, что при обрыве связи в журнале линии связи и на странице Данные КП.

Просмотр 15 сообщений - с 5,281 по 5,295 (из 7,872 всего)