Страница 177 из 318 ПерваяПервая ... 77127167175176177178179187227277 ... ПоследняяПоследняя
Показано с 1,761 по 1,770 из 3178

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

  1. #1761

    По умолчанию

    Добрый день.
    Возникла проблема при загрузке проекта в панель. Выдает сообщение "Не достаточно памяти для загрузки проекта".
    Поясните пожалуйста, о чем идет речь? При симуляции такой проблемы не было.

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

    По умолчанию

    Цитата Сообщение от ВалераМ Посмотреть сообщение
    Если из сотни регистров я поменял адреса десяти и при этом поменял ByteSequence и никакой реакции не произошло. чтение PFW регистров всё равно не происходит. Подскажите в чем может быть еще проблема? Ставил Native, ставил Input register, Holding registr, комбинировал по разному нет данных с панели.
    Панель 315Р
    ПЛК 110-24.60 м02


    PS: еще есть такая ситуёвина, 5-6 регистров иногда всё таки считывает из 40 PFW, после следующего подключения к контроллеру может другие 5-6 считать, а может и нет. Может что со временем?
    Со всей ответственностью заявляю
    1. В конфигурации ПЛК адреса регистров панели для ВСЕХ real output/input модулей должна быть ЧЕТНОЙ, как для регистров PSW так и для регистров PFW! У Вас в конфигурации ПЛК все адреса НЕЧЕТНЫЕ!
    2. Byte Sequence должен иметь значение "Native"

    По поводу времени.

    Запись в Регистры PFW в панели кешируется. Т.е. физическая запись в регистры PFW происходит с задержкой, может через несколько десяток секунд.
    Может это и влияет

    Однако в вашем проекте ПЛК есть другая засада!


    Овен ПЛК через конфигурацию не умеет делать групповые запросы к слейвам.
    А у Вас в Мастере, в UMD сотни регистров!
    Т.к. групповых запросов нет, то все регисты читаются и пишутся по очереди, по списку, ПО ОДНОМУ,
    Интервал между запросами к регистрам панели - polling time Вы задали в одном случае 0,4 сек, а во втором 0,3 сек
    Захват-1.png Захват-2.png
    При этом Work mode установлен как Both ! Т.е. ВСЕ output модули будут записываться в панель циклически по времени, а не по изменению их значений!
    Запись/чтение чередуются
    Теперь смотрите как будет работать обмен с панелью 80
    1. зп. ПЛК --> Панель PSW301, 302
    пауза 300мс
    2. чт. Панель --> ПЛК PFW399, 400
    пауза 300мс
    3. зп. ПЛК --> Панель PSW303, 304
    пауза 300мс
    4. чт. Панель --> ПЛК PFW403, 404
    пауза 300мс
    5. зп. ПЛК --> Панель PSW305, 306
    пауза 300мс
    6. чт. Панель --> ПЛК PFW405, 406
    пауза 300мс

    .......
    и т.д. пока список ВСЕХ модуле не закончится, затем сначала

    Теперь сложите ВСЕ 300мс и скажите, через сколько минут ПЛК прочитает последние регистры PFW469, 470 ?

    А кроме панели 80 есть еще и 88 и модули!

    Дополнение
    Если в конфигурации несколько UDM, то мастер обрабатывает по одной переменной из каждого UMD по очереди. Т.е сначала одну переменную из одного UMD, затем одну переменную из второго UMD, опять одну переменную из одного UMD, затем одну переменную из второго UMD и т.д. Если количество переменных в UMD разное, то переменные одного UMD фактически будут опрашиваться чаще. Даже при одинаковом времени Polling time для обоих UMD.
    Последний раз редактировалось petera; 31.05.2020 в 23:10.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  3. #1763

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    У вас полная каша тут, всё что касается чтения из панели, должны быть все Input регистры, в настройках By Poll Time и Native.
    Для записи в панель, Ouput регистры, в настройках By Value Change и Trace Mode
    Спасибо огромное,
    Последний раз редактировалось ВалераМ; 27.05.2020 в 12:12.

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

    По умолчанию

    Цитата Сообщение от Artemegorich75 Посмотреть сообщение
    Добрый день!
    Пытаюсь разобраться с настройкой обмена между codesys v3.5. SP14 patch3 через виртуальный контроллер Control win v3 (slave) и онлайн эмуляцию в конфигураторе СП300 (master) по Modbus TCP. Ни контроллер, ни панель еще не куплены. Разбирался по примеру на вкладке с информацией по СП300 : "СП3xx-Р. Пример обмена с ПЛК210 по Modbus TCP, панель - Master" . Вопрос в том, что не могу прочитать переменную xReadBool, которая находится во входных регистрах модбас байт 0, бит 0, т.е при установке индикатора как в примере 1x0, он считывает байт0, бит 0 регистров временного хранения, куда записана переменная xWriteBool. Так же не выходит изменить и записать переменную xWriteBool, привязывая ее к переключателю с индикацией указывая 4x-0-00, однако чтение и запись xWriteBool происходит при настройке 0х0. Вопрос наверное простецкий, но разобраться никак не могу, по крайней мере как из области входных данных получить состояние бита? Так же насколько я понял нумерация битов при обращении 0x, 1x сквозная т.е. 1 байт 2бит записывается как 0x17 или 1x17, а нумерация бит во входных данных начинается с нуля или идет после временных данных? не могу понять, не работает ни так ни так, остальные данные, word, real, string передаются корректно. Вложение 49263
    Заранее спасибо!Вложение 49264Вложение 49265
    Добрый день.

    В эмуляторе обращение к discrete inputs слэйва CODEYS возможно только через 3x (в функциональной области выбираете операцию Копировать регистр, например 3x0-->PSW256).
    Биты 0-15 регистра PSW256 будут отображать значения discrete inputs слэйва 0-15.

    Для записи coils надо использовать обращение типа 0x0.

    На реальной панели - обращение к discrete inputs через 1x и обращение к coils слэйва CODESYS через 4x - работает корректно.

  5. #1765

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение

    Теперь сложите ВСЕ 300мс и скажите, через сколько минут ПЛК прочитает последние регистры PFW469, 470 ?

    А кроме панели 80 есть еще и 88 и модули!
    Спасибо большое, получается время минимальным надо ставить? а для модулей тоже Native ставить? Ведь чтение с модулей и запись в панель идет прекрасно. И изменение входных значений идет постоянно. Как тогда быть со скоростью обмена?

  6. #1766

    По умолчанию

    Вопрос решил.
    В историческом графике параметры среза были большие.

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

    По умолчанию

    Цитата Сообщение от ВалераМ Посмотреть сообщение
    Спасибо большое, получается время минимальным надо ставить? а для модулей тоже Native ставить? Ведь чтение с модулей и запись в панель идет прекрасно. И изменение входных значений идет постоянно. Как тогда быть со скоростью обмена?
    Если для модулей - чтение идет правильное, то менять Трейс Моде не надо.

    Для панелей - лучшее решение в плане повышения быстродействия - сделать ПЛК слейвом,
    Я понимаю, что много переделывать нужно, тогда это совет на будущие проекты

    А сейчас
    Минимум - разнести для панелей все модули input и ouput по разным UMD. В UMD c ouput сделать режим работы By Value Change.

    Максимум
    Для реализации групповых запросов, хотя бы для чтения регистров из панели, использовать в конфигурации модули String, тогда можно по 40 регистров за один раз читать из панели. Здесь тоже правка проекта в ПЛК нужна, но проще.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  8. #1768

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Минимум - разнести для панелей все модули input и ouput по разным UMD. В UMD c ouput сделать режим работы By Value Change.
    Спасибо Petera! Буду исправляться потихоньку. И тут сразу вопрос раскидал по разным UMD input и output, вообще теперь контроллер не видит панель(81 ошибка). Наверное из-за того что у меня на столе только панель и плк, без модулей или где то время сделать поменьше/побольше?

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

    По умолчанию

    Цитата Сообщение от ВалераМ Посмотреть сообщение
    Спасибо Petera! Буду исправляться потихоньку. И тут сразу вопрос раскидал по разным UMD input и output, вообще теперь контроллер не видит панель(81 ошибка). Наверное из-за того что у меня на столе только панель и плк, без модулей или где то время сделать поменьше/побольше?
    Я бы для начала, чтобы понять принципы обмена, сделал тестовый проект ПЛК-Панель, по 3..4 регистра для чтения и записи и поигрался бы с ним, разные там Byte Sequence, адреса - четные/нечетные.

    Для примера использования модулей String для организации групповых запросов к панели
    Принцип простой
    Захват-2.png

    1. В UMD создаем String Output/Input
    2. Смотрим какой адрес типа "AT % ......" конфигуратор присвоил модулю
    3. В разделе объявления PLC_PRG создаем Массивы типа
    <Наше Имя> AT <смотрим п.2>:ARRAY [<число элементов>] OF <нужный тип> (WORD, BYTE, REAL)

    4. При этом число байт(символов) в свойствах String Output/Input д.б. для
    - WORD ровно в 2 раза больше чем число элементов в массиве п.3.
    - REAL ровно в 4 раза больше чем число элементов в массиве п.3.
    - BYTE равно числу элементов в массиве п.3.

    но для любого типа число байт(символов) в свойствах String д.б НЕ БОЛЕЕ 80. Почему максимум 80 - отдельная тема. Меньше можно.
    Захват-4.png

    Осталось в программе извлечь элементы массивов по привычным названиям переменных.

    Результат в работе
    Захват-1.png

    Внимание! Значение Byte Sequence для данного способа не имеет значения, т.к. при групповом чтении массива регистров из панели они приходят в правильном порядке.

    ЗЫ.
    Команды чтения для String input нужно заменить на 0х03
    Захват-11.png
    Вложения Вложения
    Последний раз редактировалось petera; 30.05.2020 в 07:17.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  10. #1770

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    1. Native действует на порядок передачи слов(Word) в 32 битных переменных - Real или DWord. Если ПЛК от ОВЕН, то для связи с панелями СП, параметра Byte Sequence должен иметь значение "Native".

    2. Регистры в конфигурации ПЛК нумеруются начиная с "0". Регистры в панели (PFW, PSW) - тоже от "0". По этому никаких смещений типа +1 нет
    PFW300=>Real input module 10300 !!!

    Карта регистров панели:


    ЗЫ

    При некоторых значениях Real (для чисел <0), без Native и адресации PFW300=>Real input module 10301, полученное число из панели будет очень похоже на правду.



    В мастере ПЛК можно делать несколько UMD, например отдельный для панели, для каждого UMD можно делать свой параметр Byte Sequence
    классно помог мне этот момент.

Страница 177 из 318 ПерваяПервая ... 77127167175176177178179187227277 ... ПоследняяПоследняя

Похожие темы

  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

Ваши права

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