Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 14

Тема: Как сделать импульсную запись в регистр, при определенных условиях?

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

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

    Задача:

    Как сделать импульсную запись в регистр?

    То есть, вот есть у меня регистр который принимает значения lreal, и мне нужно по клику на кнопку производить запись в этот регистр.

    При этом при перезапуске скады, если в режиме простоя было изменено значения регистра opc, скада вновь запустившись не записывала предыдущее значение "сохраненного скада параметра/переменной" , а также не записывала значение 'по умолчанию' у "скада параметра/переменной"!?

    Есть ли у вас мысли на этот счет?

    Заранее благодарю вас за ваше время и переданный мне опыт!

    !!MS4d!!

  2. #2

    По умолчанию

    Ребята, активней проявляйтесь!
    Любые мысли...

  3. #3

    По умолчанию

    Цитата Сообщение от Cinks Посмотреть сообщение
    Ребята, активней проявляйтесь!
    Любые мысли...
    Какие вам мысли нужны? Вешаете событие на кнопку, чтобы по клику мыши у вас устанавливался параметр. Задаете источник (параметр в дереве объектов) и приемник (канал в дереве системы, лучше через промежуточный параметр объекта). Если значения канала и параметра не равны, то произойдет запись по изменению.

  4. #4

    По умолчанию

    У "параметра", который устанавливает событие "клик мыши" нет значения по умолчанию? Начальное значение параметра дерева объектов связанного с регистром дерева системы запишется в момент перезапуска скады?
    Последний раз редактировалось Пантелеев Дмитрий; 16.04.2021 в 15:09.

  5. #5

    По умолчанию

    Цитата Сообщение от Cinks Посмотреть сообщение
    У "параметра", который устанавливает событие "клик мыши" нет значения по умолчанию? Начальное значение параметра дерева объектов связанного с регистром дерева системы запишется в момент перезапуска скады?
    Параметр никакое событие не устанавливает. И в момент запуска ничего не запишется. У вас событие называется "Клик мыши", значит действие (запись в регистр) выполнится только тогда, когда вы кликните мышью на кнопку, на которой у вас висит это действие, в остальное время ничего в регистр передаваться не будет.

  6. #6

    По умолчанию

    Цитата Сообщение от b_aleks Посмотреть сообщение
    Параметр никакое событие не устанавливает. И в момент запуска ничего не запишется. У вас событие называется "Клик мыши", значит действие (запись в регистр) выполнится только тогда, когда вы кликните мышью на кнопку, на которой у вас висит это действие, в остальное время ничего в регистр передаваться не будет.
    Будьте внимательнее при прочтении.

    Я говорю следующее:

    Вот вы событием "клик мыши" записали в параметр дерева объектов значение, этот параметр вы связываете с регистром дерева системы. При этом у параметров дерева объектов всегда есть начальное значение, и оно всегда записывается при перезапуске скады, и само событие "клик мыши" здесь пока не причем. Клика еще не произошло, но в регистр дерева системы при перезапуске улетело начальное значение параметра.

    1. У параметра есть начальное значение?

    2. Это начальное значение всегда записывается при перезапуске?

    3. Вы сами пробовали делать то, что советуете?

  7. #7

  8. #8
    Пользователь
    Регистрация
    19.08.2014
    Адрес
    г. Саратов
    Сообщений
    66

    По умолчанию

    Здравствуйте!

    Схожий вопрос по разделению чтения/записи. Есть битовая маска,она принимается из регистра ModbusTCP в параметр, программно декодируется в битовые параметры 1,которые связаны с чекбоксами (у чекбокса это входящая связь) на форме. Исходящая связь - чекбокс - битовые параметры 2,Битовые параметры 2 программно упаковываются в параметр,значение которого передается в регистр. Проблема в том, что после запуска исполнения происходит запись в регистр пустой (0) битовой маски. Помогите решить проблему!

  9. #9
    Пользователь
    Регистрация
    05.10.2016
    Адрес
    Новосибирск
    Сообщений
    35

    По умолчанию

    Попробуйте в свойствах программы - Способ исполнения сменить с периодического на По вызову. А в событиях чекбокса добавить клик мыши - вызвать программу. тогда она будет вызываться только по этому событию.

    Так же можно использовать параметры не просто WORD а SYSTEM_DWORD_PARAM. (как у параметра, в который пакуются биты, так и у регистра Выход на стороне протокола ). У этого типа есть значение Value и признак качества StatusCode, когда он = 0 (то есть Good), то происходит передача. В программе пакующей регистр вы присваиваете значение Параметр 1.Value. По идее статус должен обновиться, но возможно еще понадобится его напрямую установить (Параметр 1.StatusCode = 0; )

    Ну и в свойствах протокола выставьте способ записи - по изменению

  10. #10
    Пользователь
    Регистрация
    19.08.2014
    Адрес
    г. Саратов
    Сообщений
    66

    По умолчанию

    Спасибо попробую.

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Ответов: 15
    Последнее сообщение: 25.06.2020, 11:42
  2. Ответов: 8
    Последнее сообщение: 15.07.2014, 12:00
  3. регистр чтение-запись
    от Денис_NTS в разделе ПЛК1хх
    Ответов: 24
    Последнее сообщение: 26.02.2013, 11:54
  4. Ответов: 1
    Последнее сообщение: 26.11.2012, 10:54
  5. Ответов: 1
    Последнее сообщение: 26.11.2012, 10:54

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •