Страница 39 из 320 ПерваяПервая ... 2937383940414989139 ... ПоследняяПоследняя
Показано с 381 по 390 из 3198

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

  1. #381
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,171

    По умолчанию

    Цитата Сообщение от Dmitry-357 Посмотреть сообщение
    Приветствую.
    Скажите, стоит задача написания программы, контроллер ПЛК110,
    панель СП310-Р.
    Заказчик просит еще чтоб была WEB визуализация, есть ли такая возможность у данной панели
    или это как то подругому нужно решать?
    У панелей СП3xx такой возможности нет.

  2. #382

    По умолчанию

    Добрый день, прошу помощи зала, не удаёться связать панел СП310Р и ПЛК 110-24 32.к.м. В панели нарисовал кнопку . присвоили ей адрес PSB 256, скорость 9600, в ПЛК в конфигурации добавил модуль RS 485_1, универсальный модбайс девайс (NET MODE - TCP, MODYLE SLAVE ADRES - 1, BY POLL TIME) , 8-bit input module (REGISTER adres 256, COMAND - READ COIL STATUS). Внулевом бите этого регистра указал переменную MAO_1_OTK_CP_IN которая должна переключаться в программе по нажатию кнопки на экране и ничего не происходит. Где ошибка не могу найти..Rtorka.zipRtorka.zip

  3. #383

    По умолчанию

    Ту проект панели
    Вложения Вложения

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

    По умолчанию

    Цитата Сообщение от дрю Посмотреть сообщение
    Добрый день, прошу помощи зала, не удаёться связать панел СП310Р и ПЛК 110-24 32.к.м. В панели нарисовал кнопку . присвоили ей адрес PSB 256, скорость 9600, в ПЛК в конфигурации добавил модуль RS 485_1, универсальный модбайс девайс (NET MODE - TCP, MODYLE SLAVE ADRES - 1, BY POLL TIME) , 8-bit input module (REGISTER adres 256, COMAND - READ COIL STATUS). Внулевом бите этого регистра указал переменную MAO_1_OTK_CP_IN которая должна переключаться в программе по нажатию кнопки на экране и ничего не происходит. Где ошибка не могу найти..Rtorka.zipRtorka.zip
    1. Не понятно по какому интерфейсу будет связь.
    Если по RS 485, то зачем для UMD задан ежим работы TCP, должен быть Serial
    Захват-5.png

    2. ПЛК в настройках RS 485 задано - нет контроля четности
    Захват-1.png
    А в настройках порта панели - есть (Контроль на четность)
    Захват-2.png

    3. ПЛК для MAO_1_OTK_CP_IN адрес задан 256
    Захват-4.png
    А для переключателя на экране панели почему-то адрес уже PSB300
    Захват-6.png
    А должен быть PSB256
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  5. #385

    По умолчанию

    Petera, спасибо. С регистром PSB 300/256 в реальностивсе было правильно это zip. файл был сохранён до того как я изменил его в ПЛК. Заработало сразу как я исправил бит четности и NET MODE выставил SERIAL.

  6. #386
    Пользователь
    Регистрация
    21.05.2016
    Адрес
    Беларусь
    Сообщений
    13

    По умолчанию

    Проект в составе ПЛК-110(М02)- СП307(слэйв) по RS-485 и быстрые выходы по таймерному прерыванию 25кГц.
    В конфигурации на чтение из панели около 30 регистров с числовыми значениями (коды клавиш, уставки).
    Реакция на нажатие клавиши СП307 около 3-4 сек, что недопустимо.
    На форуме встречал предложения для уменьшения числа элементов для чтения из панели применить "String input module".
    Вопрос - как сформировать строку в панели в последовательности регистров (преобразовать числовые значения в ASCII коды
    аналогично оператору CoDeSys "word_to_string")? Может существует незадокументированная HMI Api Function для макросов.

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

    По умолчанию

    Цитата Сообщение от kir2 Посмотреть сообщение
    Проект в составе ПЛК-110(М02)- СП307(слэйв) по RS-485 и быстрые выходы по таймерному прерыванию 25кГц.
    В конфигурации на чтение из панели около 30 регистров с числовыми значениями (коды клавиш, уставки).
    Реакция на нажатие клавиши СП307 около 3-4 сек, что недопустимо.
    На форуме встречал предложения для уменьшения числа элементов для чтения из панели применить "String input module".
    Вопрос - как сформировать строку в панели в последовательности регистров (преобразовать числовые значения в ASCII коды
    аналогично оператору CoDeSys "word_to_string")? Может существует незадокументированная HMI Api Function для макросов.
    Какой такой "word_to_string"?
    Предложенный способ повышения скорости обмена с панелью с использованием в мастере ПЛК модулей String output module/String input module здесь http://www.owen.ru/forum/showthread....l=1#post141316
    Смотрите внимательно пример программы для ПЛК
    Захват-1.png
    Никаких преобразований числовых значения в ASCII коды здесь нет
    А панель вообще не знает о том, что ее регистры читаются какими-то String input module. Т.е. никаких дополнительных телодвижений в проекте для панели делать не требуется, в том числе и преобразовать числовые значения в ASCII коды.

    ЗЫ, Т.к. ссылка больше не работает привожу описание способа использования String output /String input модулей
    1. Определяем приемлемое количество регистров в одном запросе, у меня в примере будет 16 регистров в одной группе.
    Для каждой группы будем использовать ОДИН модуль String
    Слишком много в группе делать не стоит.
    а) для модуля String есть "магическая" цифра 80 (перманентное число байт в модуле String), по этому если модулей String будет больше одного, то в каждом можно использовать не более 80 байт или 40 регистров. Так получилось, что в реальном распределении памяти адрес каждого последующего модуля String совпадает с адресом 41 регистра предыдущего и все регистры старше 41 будут переписываться информацией из первых регистров последующих модулей.
    Больше 40 регистров можно если модуль String всего один.

    2.Помещаем String output и String input модули в разные UMD
    Для UMD с String output задаем режим работы по изменению значения
    Захват-5.png

    В String output используем для записи 16 функцию
    Захват-1.png

    3. Смотрим в конфигурации какие адреса получились для модулей String, например AT %QB7.1.0.0 и/или AT %QB7.1.1.0 и/или %QB7.1.2.0 и т.д
    Захват-2.png

    4. Создаем в разделе описания переменных нужное количество групп регистров в виде массивов вида Blok1 AT %QB7.1.0.0:ARRAY [0..15] OF WORD
    где после AT приводим адреса из конфигурации.
    Захват-3.png

    число байт в модуле String д.б. в два раза больше числа регистров в группе
    Захват-4.png

    5. В программе обращаемся к элементам массивов
    Захват-6.png


    Вот еще один пример - чтение из панели значений Float
    Захват-2.png Захват-3.png
    Вложения Вложения
    Последний раз редактировалось petera; 22.04.2020 в 13:27.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  8. #388
    Пользователь
    Регистрация
    21.05.2016
    Адрес
    Беларусь
    Сообщений
    13

    По умолчанию

    Petera, спасибо за оперативный ответ.
    С символьной переменной я связался по причине определения str1 в конфигураторе
    Вложение 30532
    которая в результате читалась в ПЛК как str1='', т.е. пустой строкой.
    Сегодня же попробую изменить чтение регистров предложенным Вами способом.
    Не понял только один момент - почему Вы ограничиваете в указанном примере чтение-запись
    в одном канале (переменной) 16-ю регистрами (amount byte=32), ведь максимальное значение
    равно 249 байтам и указав (amount byte=40) можно обойтись одним каналом.

    И ещё один момент - функция "копировать регистр" из битового PSB в слово PSW
    Захват-2.jpg
    работает при офлайн эмуляции при PSB кратном 8 (как справедливо Вами указано в одном из
    Ваших сообщений), а на СП300 приведенная на изображении функция читает значения из
    начального адреса, кратного 16 (PSB288) в PSW296.0.???

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

    По умолчанию

    Цитата Сообщение от kir2 Посмотреть сообщение
    Petera, спасибо за оперативный ответ.
    С символьной переменной я связался по причине определения str1 в конфигураторе
    Вложение 30532
    которая в результате читалась в ПЛК как str1='', т.е. пустой строкой.
    Сегодня же попробую изменить чтение регистров предложенным Вами способом.
    Не понял только один момент - почему Вы ограничиваете в указанном примере чтение-запись
    в одном канале (переменной) 16-ю регистрами (amount byte=32), ведь максимальное значение
    равно 249 байтам и указав (amount byte=40) можно обойтись одним каналом.

    И ещё один момент - функция "копировать регистр" из битового PSB в слово PSW
    Захват-2.jpg
    работает при офлайн эмуляции при PSB кратном 8 (как справедливо Вами указано в одном из
    Ваших сообщений), а на СП300 приведенная на изображении функция читает значения из
    начального адреса, кратного 16 (PSB288) в PSW296.0.???
    Ограничения в 16 регистров нет, это значение у меня только для примера. Кроме того в следующем посте http://www.owen.ru/forum/showthread....l=1#post176633 более подробный ответ, почему в моем примере в группе по 16 регистров.
    Однако в реальности 249 байт не получается, для String есть "магическая" цифра 80 (перманентное число байт в модуле String), по этому если модулей String будет больше одного, то можно использовать только 80 байт или 40 регистров, объяснения здесь http://www.owen.ru/forum/showthread....l=1#post177886

    По поводу "копировать регистр" из битового PSB в слово PSW.
    Не совсем понял Ваш вопрос.
    Могу сказать только, что начальный адрес PSB должен быть ОБЯЗАТЕЛЬНО кратным 16. Это будет работать и в эмуляторе и в панели.
    Если PSB выбирать кратном 8, то такой вариант правильно работает ТОЛЬКО в эмуляторе. Для реальной панели этот вариант не проходит.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  10. #390
    Пользователь
    Регистрация
    21.05.2016
    Адрес
    Беларусь
    Сообщений
    13

    По умолчанию

    Petera, в Ваших примерах ссылка в конфигураторе на адресное пространство типа IB7.2.0 (входы).
    У меня почему-то QB, хотя вставлен "String input module"
    Захват-3.jpgЗахват-3.jpg
    Это глюк конфигуратора или в объявлении переменных указывать типа
    (Blok1_fromPanel AT %QB6.2.0.0:ARRAY [0..39] OF WORD)?

Страница 39 из 320 ПерваяПервая ... 2937383940414989139 ... ПоследняяПоследняя

Похожие темы

  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 в качестве панели оператора
    от Леонид в разделе СПК1хх
    Ответов: 15
    Последнее сообщение: 20.11.2015, 08:17

Ваши права

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