Показано с 1 по 10 из 4001

Тема: Панели оператора СП3xx. Вопросы и ответы

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,108

    По умолчанию

    Цитата Сообщение от malek73 Посмотреть сообщение
    Два вопроса по панелям СП3хх:
    1. Есть ли где описание последовательности обработки элементов на активном экране? Имеет ли значение их расположение, тип? В какой момент читаются внешние регистры по ModBus, когда пишутся?
    2 Есть ли в Конфигураторе подобие кроссреференс? Пример: поиск экранов на которых пишется конкретный регистр PFW
    В общем случае
    Регистры 3х и 4х. Чтение
    Все регистры, используемые в качестве источника данных для элементов активного экрана, постоянно и безусловно читаются из слейва с периодичностью заданной в настройках "Коммуникационный интервал" порта панели.
    Чтение будет осуществляться группой если адреса регистров отличаются не более чем на 5, например
    - для двух дисплеев с регистрами Wrd 4х00 и 4х5 будет одна команда чтения шести регистров 0,1,2,3,4,5. А для двух дисплеев с регистрами Wrd 4х00 и 4х6 будут две отдельные команды чтения по одному регистру.
    - для двух дисплеев с регистрами DWrd 4х00 и 4х6 будет одна команда чтения восьми регистров 0,1,2,3,4,5,6,7. А для двух дисплеев с регистрами DWrd 4х00 и 4х8 будут две отдельные команды чтения по два регистра.
    Соответственно к вышеописанной цепочки из двух регистров могут добавляться последующие регистры, если их адрес отличаются не более чем на 5 от предыдущего. Например
    - для трех дисплеев с регистрами Wrd 4х00, 4х5 и 4х8 будет одна команда чтения девяти регистров 0,1,2,3,4,5,6,7,8.
    и т.д.
    Но максимальное число регистров в групповой команде чтения не может превышать 16.

    Запись регистров 3х и 4х, используемых в полях ввода - однократная, в момент нажатия ENTER.
    Запись регистров из ф. областей тоже по возможности группами из 16 рег.
    Если на экране есть регистры на чтение и на запись, то чтение запись чередуются
    -чтение 1 группы
    - запись 1 группы
    -чтение 2 группы
    - запись 2 группы
    и т.д

    Таблицы в группировке с другими элементами экрана не участвуют. Для таблиц всегда будут свои групповые(если столбцов несколько) или одиночные(если только один столбец) запросы к слейву.
    Таблица представлена массивом структур.
    Формат структуры и количество регистров в ней определяется количество столбцов и типом данных в каждом столбце.
    Таблицы читаются построчно. Причем второе правило "максимальное число регистров в групповой команде чтения не может превышать 16" на таблицы не распространяется, в одной группе будет столько регистров, сколько нужно для одной строки, хоть 125!
    Запросы на чтение строк разнесены по разным циклам выполнения программы.
    В каждом цикле читаются все регистры только одной строки

    Например на экране есть ДИСПЛЕЙ и ТАБЛИЦА 1 столбец 3 строки
    1. чтение 4х0 (дисплей)
    2. чтение 4х2 (первая строка таблицы)
    3. чтение 4х0 (дисплей)
    4. чтение 4х3 (вторая строка таблицы)
    5. чтение 4х0 (дисплей)
    6. чтение 4х4 (третья строка таблицы)
    и т.д.

    Если ДИСПЛЕЙ и ТАБЛИЦА 10 столбцов 3 строки
    1. чтение 4х0 (дисплей)
    2. чтение группы 4х2, 4х3...4х19 (первая строка таблицы)
    3. чтение 4х0 (дисплей)
    4. чтение группы 4х20, 4х21...4х29 (вторая строка таблицы)
    5. чтение 4х0 (дисплей)
    6. чтение группы 4х30, 4х31...4х39 (третья строка таблицы)
    и т.д.

    Надо различать элементы экрана
    - обычные, глобальные, на системных экранах
    Например, на экране есть
    дисплей с регистром 4х0
    Функциональная область в которой
    - читать один рег. 4х3
    - читать группу из 5 рег. с адреса 4х5

    Если дисплей и ф. область обычные, то будет один групповой запрос
    читать группу из десяти регистров - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
    Если и дисплей и ф. область будут глобальными, то также будет один групповой запрос
    читать группу из десяти регистров - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

    Но если только дисплей или только ф. область будут глобальными, то будет два отдельных запроса
    1. читать рег. 4х0
    2. читать группу из семи регистров - 3, 4, 5, 6, 7, 8, 9

    Следует иметь ввиду, что кроме обычных экранов у панели есть еще системные (невидимые) экраны, их несколько.
    И выполнение(обслуживание) экранов происходит как и в ПЛК - циклически
    - системный экран 1
    - системный экран 2
    ........
    - системный экран N
    - пользовательский активный экран
    Считайте, что элементы со свойством глобальный находятся на невидимом системном экране
    Группировка с правилом "разница между стартовыми адресами не более 5" на активном экране своя, на системных (не видимых) экранах своя
    Последний раз редактировалось petera; 05.10.2022 в 15:45.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  2. #2

    По умолчанию

    Спасибо, petera, за подробный ответ. Информация из тех документации или экспериментально?
    Вопрос возник в связи с тем, что у меня на экране вызывается макрос по системному биту PSB4, но это вызывало задержку в работе оборудования. Решил поменять на PSB3, и после этого начались сбои в работе. Пока установил PSB6, как что то среднее, но хотелось бы понять, в чем причина.
    По вопросу кроссреференс, когда много функциональных областей, тяжело найти именно ту , где выполняется какое-то действие с регистром. Приходится перебором искать нужную, неудобно.

  3. #3
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,108

    По умолчанию

    Цитата Сообщение от malek73 Посмотреть сообщение
    Спасибо, petera, за подробный ответ. Информация из тех документации или экспериментально?
    Вопрос возник в связи с тем, что у меня на экране вызывается макрос по системному биту PSB4, но это вызывало задержку в работе оборудования. Решил поменять на PSB3, и после этого начались сбои в работе. Пока установил PSB6, как что то среднее, но хотелось бы понять, в чем причина.
    По вопросу кроссреференс, когда много функциональных областей, тяжело найти именно ту , где выполняется какое-то действие с регистром. Приходится перебором искать нужную, неудобно.
    Вся информация получена экспериментально.
    Есть важное замечание. Если есть ф.область с функциям чтения или копирования регистров из слейвов, то физическое чтение(запросы к слейву) выполняются ВСЕГДА, не зависимо от того выполняются условия запуска ф.области или нет. От выполнения условия запуска ф.области зависит только - использовать прочитанные данные или нет.
    Вопрос по вызову Вашнго макроса - какой режим выполнения используется (параллельный или последовательный). Если выбрали параллельный, попробуйте вставить в тело макроса функцию - Delay(), на 10..20мс
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Похожие темы

  1. Экспорт CSV в панели СП3xx и порядок квитирования событий
    от theoretician в разделе Панели оператора (HMI)
    Ответов: 30
    Последнее сообщение: 24.08.2021, 16:17
  2. Индикатор ИП120 , вопросы- ответы
    от rovki в разделе Программируемые реле
    Ответов: 56
    Последнее сообщение: 03.11.2017, 15:58
  3. Сенсорные панели оператора ОВЕН СП3ХХ
    от Боднар Олег Миколайович в разделе Подбор Оборудования
    Ответов: 7
    Последнее сообщение: 17.12.2015, 09:09
  4. СПК 107 в качестве панели оператора
    от Леонид в разделе СПК1xx (архив)
    Ответов: 15
    Последнее сообщение: 20.11.2015, 08:17

Ваши права

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