Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 1

Замена RSLogix 500 SCP в Studio 5000: AOI + масштабирование модуля

Замените инструкцию RSLogix 500 SCP в Studio 5000 Logix Designer. Сравните масштабирование инженерных единиц модуля ввода-вывода 1756, загрузку AOI и пользов...

Инструкция SCP (Scale with Parameters) знакома каждому программисту RSLogix 500. В Studio 5000 Logix Designer на панели инструкций нет готовой SCP, которую можно сразу добавить. Ту же линейную зависимость приходится заново реализовывать через масштабирование аналогового модуля в инженерных единицах, пример AOI Scale от Rockwell или локальную для проекта последовательность AOI/CPT. На предприятиях, где просто оставляют необработанные значения до «потом», вскоре обнаруживается, что теги PID, HMI и архиватора используют разные инженерные единицы.

Замена SCP RSLogix 500 в Studio 5000: AOI + масштабирование модуля — рисунок 1

Y = ((X − Xmin) ÷ (Xmax − Xmin)) × (Ymax − Ymin) + Ymin — и ограничивайте результат так же, как это делала SCP.

Сохранение поведения ограничения

RSLogix 500 удерживает результат на уровне Ymin/Ymax, когда необработанное входное значение выходит за пределы настроенного диапазона. Любая замена Logix должна делать то же самое, иначе неисправности датчика приведут к передаче в систему управления значений за допустимыми пределами. Используйте вычисления REAL на всём пути: целочисленное деление отбрасывает разрешение меньше одного младшего разряда, необходимое контурам PID.

Решение 1: инженерные единицы модуля

Для передатчиков с фиксированными диапазонами включите Engineering Units на аналоговом канале (1756-IF8/IF16, 1769-IF4/IF8, 5069-IF8 и аналогичных модулях). Задайте нижний и верхний пределы сигнала, а также нижнее и верхнее значения инженерного диапазона, загрузите конфигурацию и напрямую используйте масштабированный тег REAL. Математика в лестничной логике не требуется. Ограничение: диапазон фиксируется при загрузке — для изменения диапазона с HMI во время выполнения потребуется AOI.

Семейство модулей Масштабирование в инженерных единицах Примечания
1756-IF8 / IF16 Для каждого канала Предпочтительный вариант для ControlLogix
1769-IF4 / IF8 Для каждого канала CompactLogix
5069-IF8 Для каждого канала Studio 5000 v28+
Замена SCP RSLogix 500 в Studio 5000: AOI + масштабирование модуля — рисунок 2

Решение 2: импорт SCL_AOI

Скачайте пример AOI Scale (Answer ID 52412 / пакеты класса SCL_AOI.L5X), импортируйте его в разделе Add-On Instructions и добавьте инструкцию в строку. Свяжите параметры Input, InputMin/Max, ScaledMin/Max и ScaledValue. Поскольку параметры являются тегами, экранные формы HMI могут изменять диапазоны онлайн — это типичный запрос на объекте, когда диапазоны резервуаров меняют без загрузки новой программы.

Решение 3: пользовательский AOI или ST

IF (InMax - InMin) = 0.0 THEN
  ScaledValue := OutMin;
ELSE
  ScaledValue := ((InputValue - InMin) / (InMax - InMin)) * (OutMax - OutMin) + OutMin;
  IF ScaledValue > OutMax THEN ScaledValue := OutMax;
  ELSIF ScaledValue < OutMin THEN ScaledValue := OutMin;
  END_IF;
END_IF;

Эквиваленты на лестничной логике используют SUB/DIV/MUL/ADD вместе с ветвями ограничения GRT/LES. Предусмотрите защиту от деления на ноль, когда InMax равен InMin. Откройте для внешнего доступа Read/Write параметры InMin/InMax/OutMin/OutMax, чтобы HMI могла записывать их значения.

Соответствие параметров SCP

RSLogix 500 SCP AOI Studio 5000
Input (INT/DINT) Input (предпочтительно REAL)
InputMin / InputMax InMin / InMax
ScaledMin / ScaledMax OutMin / OutMax
Встроенное ограничение Явная логика ограничения

Процесс изменения диапазона с HMI во время выполнения

Если операторам нужно менять инженерные диапазоны без загрузки новой программы, свяжите числовые поля с тегами InMin, InMax, OutMin и OutMax AOI и разрешайте запись только через импульсный бит подтверждения. Физически реалистичные ограничения HMI (например, необработанные значения 0–32767 и инженерные единицы в пределах возможностей передатчика) предотвращают ошибки ввода, при которых диапазон инвертируется. Задокументируйте заводские диапазоны по умолчанию на экранной форме, чтобы после ошибочного изменения их можно было восстановить без открытия Studio 5000. Если вместо AOI использовалось масштабирование модуля в инженерных единицах, планируйте контролируемую загрузку конфигурации при каждом изменении инженерного диапазона — для большинства модулей безопасно изменить эти свойства каналов онлайн невозможно.

Проверки при вводе в эксплуатацию

Задайте для Input минимальное, среднее и максимальное значения и проверьте ScaledValue. Задайте значение выше Xmax и убедитесь, что срабатывает ограничение сверху. Проверьте обратные инженерные диапазоны (OutMin > OutMax), если в унаследованной SCP они использовались. На экранах HMI для изменения диапазона требуйте условие InMax > InMin и импульсное подтверждение, чтобы частичное редактирование не оставило нулевой знаменатель. Миграцию строк SCP следует выполнять в рамках того же управления изменениями, которое применяется для других преобразований ПЛК и PAC Logix.

Об авторе

Mark Townsend | Ведущий инженер по автоматизации — системы Allen-Bradley

Mark Townsend — ведущий инженер по автоматизации с более чем 18-летним опытом работы с платформами Allen-Bradley, включая ControlLogix, CompactLogix и устаревшие системы SLC-500. В его повседневную работу входят разработка логики RSLogix / Studio 5000 и ввод в эксплуатацию HMI FactoryTalk View на устаревших и смешанных парках оборудования.

Замена RSLogix 500 SCP в Studio 5000: AOI + масштабирование модуля

Замените инструкцию RSLogix 500 SCP в Studio 5000 Logix Designer. Сравните масштабирование инженерных единиц модуля ввода-вывода 1756, загрузку AOI и пользовательский AOI.

Инструкция SCP (Scale with Parameters) знакома каждому программисту RSLogix 500. В Studio 5000 Logix Designer на панели инструкций нет готовой SCP, которую можно сразу добавить. Ту же линейную зависимость приходится заново реализовывать через масштабирование аналогового модуля в инженерных единицах, пример AOI Scale от Rockwell или локальную для проекта последовательность AOI/CPT. На предприятиях, где просто оставляют необработанные значения до «потом», вскоре обнаруживается, что теги PID, HMI и архиватора используют разные инженерные единицы.

Замена SCP RSLogix 500 в Studio 5000: AOI + масштабирование модуля — рисунок 1

Y = ((X − Xmin) ÷ (Xmax − Xmin)) × (Ymax − Ymin) + Ymin — и ограничивайте результат так же, как это делала SCP.

Сохранение поведения ограничения

RSLogix 500 удерживает результат на уровне Ymin/Ymax, когда необработанное входное значение выходит за пределы настроенного диапазона. Любая замена Logix должна делать то же самое, иначе неисправности датчика приведут к передаче в систему управления значений за допустимыми пределами. Используйте вычисления REAL на всём пути: целочисленное деление отбрасывает разрешение меньше одного младшего разряда, необходимое контурам PID.

Решение 1: инженерные единицы модуля

Для передатчиков с фиксированными диапазонами включите Engineering Units на аналоговом канале (1756-IF8/IF16, 1769-IF4/IF8, 5069-IF8 и аналогичных модулях). Задайте нижний и верхний пределы сигнала, а также нижнее и верхнее значения инженерного диапазона, загрузите конфигурацию и напрямую используйте масштабированный тег REAL. Математика в лестничной логике не требуется. Ограничение: диапазон фиксируется при загрузке — для изменения диапазона с HMI во время выполнения потребуется AOI.

Семейство модулей Масштабирование в инженерных единицах Примечания
1756-IF8 / IF16 Для каждого канала Предпочтительный вариант для ControlLogix
1769-IF4 / IF8 Для каждого канала CompactLogix
5069-IF8 Для каждого канала Studio 5000 v28+
Замена SCP RSLogix 500 в Studio 5000: AOI + масштабирование модуля — рисунок 2

Решение 2: импорт SCL_AOI

Скачайте пример AOI Scale (Answer ID 52412 / пакеты класса SCL_AOI.L5X), импортируйте его в разделе Add-On Instructions и добавьте инструкцию в строку. Свяжите параметры Input, InputMin/Max, ScaledMin/Max и ScaledValue. Поскольку параметры являются тегами, экранные формы HMI могут изменять диапазоны онлайн — это типичный запрос на объекте, когда диапазоны резервуаров меняют без загрузки новой программы.

Решение 3: пользовательский AOI или ST

IF (InMax - InMin) = 0.0 THEN
  ScaledValue := OutMin;
ELSE
  ScaledValue := ((InputValue - InMin) / (InMax - InMin)) * (OutMax - OutMin) + OutMin;
  IF ScaledValue > OutMax THEN ScaledValue := OutMax;
  ELSIF ScaledValue < OutMin THEN ScaledValue := OutMin;
  END_IF;
END_IF;

Эквиваленты на лестничной логике используют SUB/DIV/MUL/ADD вместе с ветвями ограничения GRT/LES. Предусмотрите защиту от деления на ноль, когда InMax равен InMin. Откройте для внешнего доступа Read/Write параметры InMin/InMax/OutMin/OutMax, чтобы HMI могла записывать их значения.

Соответствие параметров SCP

RSLogix 500 SCP AOI Studio 5000
Input (INT/DINT) Input (предпочтительно REAL)
InputMin / InputMax InMin / InMax
ScaledMin / ScaledMax OutMin / OutMax
Встроенное ограничение Явная логика ограничения

Процесс изменения диапазона с HMI во время выполнения

Если операторам нужно менять инженерные диапазоны без загрузки новой программы, свяжите числовые поля с тегами InMin, InMax, OutMin и OutMax AOI и разрешайте запись только через импульсный бит подтверждения. Физически реалистичные ограничения HMI (например, необработанные значения 0–32767 и инженерные единицы в пределах возможностей передатчика) предотвращают ошибки ввода, при которых диапазон инвертируется. Задокументируйте заводские диапазоны по умолчанию на экранной форме, чтобы после ошибочного изменения их можно было восстановить без открытия Studio 5000. Если вместо AOI использовалось масштабирование модуля в инженерных единицах, планируйте контролируемую загрузку конфигурации при каждом изменении инженерного диапазона — для большинства модулей безопасно изменить эти свойства каналов онлайн невозможно.

Проверки при вводе в эксплуатацию

Задайте для Input минимальное, среднее и максимальное значения и проверьте ScaledValue. Задайте значение выше Xmax и убедитесь, что срабатывает ограничение сверху. Проверьте обратные инженерные диапазоны (OutMin > OutMax), если в унаследованной SCP они использовались. На экранах HMI для изменения диапазона требуйте условие InMax > InMin и импульсное подтверждение, чтобы частичное редактирование не оставило нулевой знаменатель. Миграцию строк SCP следует выполнять в рамках того же управления изменениями, которое применяется для других преобразований ПЛК и PAC Logix.

Об авторе

Mark Townsend | Ведущий инженер по автоматизации — системы Allen-Bradley

Mark Townsend — ведущий инженер по автоматизации с более чем 18-летним опытом работы с платформами Allen-Bradley, включая ControlLogix, CompactLogix и устаревшие системы SLC-500. В его повседневную работу входят разработка логики RSLogix / Studio 5000 и ввод в эксплуатацию HMI FactoryTalk View на устаревших и смешанных парках оборудования.

Оставить комментарий

Обратите внимание, комментарии должны быть одобрены перед публикацией.