Показано с 1 по 6 из 6

Тема: Обмен между панелью оператора ONI и ПЛК 160М

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

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

    По умолчанию Обмен между панелью оператора ONI и ПЛК 160М

    Здравствуйте. Нужно считать данные (уставки регуляторов) из панели ONI в ПЛК 160М (ПЛК слейв по ТСР). Алгоритм в ПЛК состоит из нескольких POU (программ), вызываемых по очереди. В панели для каждой программы есть окна вода уставок. Прикол состоит в том, что при идентичных настройках (проверял не однократно, но может быть что то все таки упустил) для одной программы уставки читаются корректно, для других - не корректно. Типы данных в конфигурации ПЛК и в панели одинаковые. Регистры не попутаны (если данные не вводить - значение переменных 0, после ввода -число в минус 40 степени).
    И еще вопрос (извиняюсь если не по теме). Как сделать читаемые уставки энергонезависимыми? В каждом POU читаемые из панели переменные нужно объявлять входными (т.е. VAR_INPUT), т.е. внутри POU VAR RETAIN их уже не объявить. В документации прочитал, что переменные, передаваемые через модуль слейв энергонезависимы (что в моем случае имеет место). Но после выключения/включения питания ПЛК все обнуляется.

  2. #2

    По умолчанию

    Цитата Сообщение от Виктор74 Посмотреть сообщение
    Здравствуйте. Нужно считать данные (уставки регуляторов) из панели ONI в ПЛК 160М (ПЛК слейв по ТСР). Алгоритм в ПЛК состоит из нескольких POU (программ), вызываемых по очереди. В панели для каждой программы есть окна вода уставок. Прикол состоит в том, что при идентичных настройках (проверял не однократно, но может быть что то все таки упустил) для одной программы уставки читаются корректно, для других - не корректно. Типы данных в конфигурации ПЛК и в панели одинаковые. Регистры не попутаны (если данные не вводить - значение переменных 0, после ввода -число в минус 40 степени).
    И еще вопрос (извиняюсь если не по теме). Как сделать читаемые уставки энергонезависимыми? В каждом POU читаемые из панели переменные нужно объявлять входными (т.е. VAR_INPUT), т.е. внутри POU VAR RETAIN их уже не объявить. В документации прочитал, что переменные, передаваемые через модуль слейв энергонезависимы (что в моем случае имеет место). Но после выключения/включения питания ПЛК все обнуляется.
    Проще было выложить проекты, в расширенных настройках, добавить файлы. Скрины тоже не помешают.
    Если у вас REAL -число в минус 40 степени, значит либо переставлены регистры (байты), либо не правильный адрес. В ПЛК слейве все переменные REAL должны быть с чётными адресами, если с нечётными, то выравниванием будут смещены на чётные, возможно в этом дело.
    Так же в панели, регистры могут иметь смещение +1 к адресу регистров ПЛК, надо проверить. Например 0 и 1 регистр в ПЛК слейве делаете целыми, а 2,4,6 - делаете REAL.
    Сначала проверяете как читаются целые и по какому адресу (есть ли смещение). Далее проверяете правильность передачи REAL.
    Если целые правильно, а REAL нет, значит переставляете регистры в панели.

    Если уставки затираются, значит они у вас не только читаются, но и записываются. Проверьте программу, уберите запись, либо копируйте считанное в другие регистры.
    Так же уставки можно хранить в энергонезависимой памяти панели и при включении считывать в регистры обмена.
    Последний раз редактировалось kondor3000; 05.06.2024 в 22:01.

  3. #3

    По умолчанию

    Да, я понял в чем дело. Действительно, некоторые переменные типа REAL в нечетных регистрах. Но как это исправить? При конфигурировании ПЛК нумеровал регистры, но как сейчас проверить, в каком именно регистре находится переменная? Выкладываю алгоритм. С сушилкой 2 и 3 все нормально, проблемы начинаются с сушилкой 4, видимо в этом месте конфигурации перепутал.
    Вложения Вложения

  4. #4

    По умолчанию

    Цитата Сообщение от Виктор74 Посмотреть сообщение
    Да, я понял в чем дело. Действительно, некоторые переменные типа REAL в нечетных регистрах. Но как это исправить? При конфигурировании ПЛК нумеровал регистры, но как сейчас проверить, в каком именно регистре находится переменная? Выкладываю алгоритм. С сушилкой 2 и 3 все нормально, проблемы начинаются с сушилкой 4, видимо в этом месте конфигурации перепутал.
    Вот сюда
    изображение_2024-06-06_143044239.png
    добавьте ещё 2 переменных "8 bits". (Float занимает места, как 4шт "8 bit" - поэтому перед Float переменные "8 bit" надо ставить кратно 4шт)

  5. #5

    По умолчанию

    Цитата Сообщение от Виктор74 Посмотреть сообщение
    Да, я понял в чем дело. Действительно, некоторые переменные типа REAL в нечетных регистрах. Но как это исправить? При конфигурировании ПЛК нумеровал регистры, но как сейчас проверить, в каком именно регистре находится переменная? Выкладываю алгоритм. С сушилкой 2 и 3 все нормально, проблемы начинаются с сушилкой 4, видимо в этом месте конфигурации перепутал.
    Можно вставить 2 шт. 8 BIT или 1 шт. 2 BYTE, это сместит все адреса на 1 регистр. REAL начнётся со 114 адреса.
    Для вставки, надо скопировать 8 BIT и вставить 2 раза перед REAL с адресом 113, используя ПКМ .
    Можно и ничего не вставлять, но REAL всё равно будет с адресом 114, об этом надо помнить, проставляя адреса в панели.
    Последний раз редактировалось kondor3000; 06.06.2024 в 15:42.

  6. #6

    По умолчанию

    Спасибо за оперативные и полезные ответы. Конфигурацию переделал, все работает.

Похожие темы

  1. Обмен данными между панелью СП310-Р и модулем ввода ICPCON ET-7017-10
    от Александр Радомский в разделе Панели оператора (HMI)
    Ответов: 1
    Последнее сообщение: 07.12.2021, 14:29
  2. Ответов: 4
    Последнее сообщение: 03.03.2021, 07:08
  3. разработка щита управления с панелью оператора
    от vitalik_77 в разделе Трёп (Курилка)
    Ответов: 0
    Последнее сообщение: 28.02.2021, 15:33
  4. Помощь с панелью оператора.
    от алекс-35 в разделе Трёп (Курилка)
    Ответов: 3
    Последнее сообщение: 19.12.2018, 10:43
  5. Модус 5672 связь с панелью оператора
    от DaioLiX в разделе Интерфейсные модули
    Ответов: 3
    Последнее сообщение: 08.04.2014, 19:39

Ваши права

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