Страница 40 из 377 ПерваяПервая ... 3038394041425090140 ... ПоследняяПоследняя
Показано с 391 по 400 из 4194

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

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

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

    По умолчанию

    Добрый день, прошу помощи зала, не удаёться связать панел СП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

  2. #2

    По умолчанию

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

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

    По умолчанию

    Цитата Сообщение от дрю Посмотреть сообщение
    Добрый день, прошу помощи зала, не удаёться связать панел СП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/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  4. #4

    По умолчанию

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

  5. #5
    Пользователь
    Регистрация
    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 для макросов.

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

    По умолчанию

    Цитата Сообщение от 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/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  7. #7

    По умолчанию

    Подскажите пожалуйста как на языке LAD это будет выглядеть, не могу понять, и как принять это по модбасу на спк107

  8. #8
    Пользователь
    Регистрация
    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. #9
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,220

    По умолчанию

    Цитата Сообщение от 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/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  10. #10
    Пользователь
    Регистрация
    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)?

Страница 40 из 377 ПерваяПервая ... 3038394041425090140 ... ПоследняяПоследняя

Похожие темы

  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

Ваши права

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