Найти в Дзене

Метрики оценки трудоемкости программирования ПЛК.

Оглавление

Автор: Олейников Виталий Сергеевич.

Материал из курса по программированию ПЛК: https://stepik.org/a/64549

Для оценки сложности разработки прикладного программного обеспечения для ПЛК предлагается оценка по пяти категориям: Сложность конфигурирования ПЛК, количество заведенных физических сигналов, количество регуляторов, количество технологических алгоритмов, количество алгоритмов защит и блокировок. Оценка сложности программирования ПЛК может быть полезна как для коммерческих организаций, так и для образовательных. Коммерческие организации смогут точней оценить сложность и время работ и обосновать их стоимость. Образовательные учреждения могут использовать подобную оценку сложности для учебных задач.

1. Конфигурирование ПЛК.

Конфигурирование модулей ПЛК. Сюда включается настройка всех модулей ПЛК, в том числе: каналов физических вводов/выводов, конфигурирование коммуникационных модулей, настройка процессорного модуля и т.д.

Весовой коэффициент может зависеть от кол-ва модулей. Таблично – выделить категории, например, см.табл.:

Пример 1:
Объект малой автоматизации. Один процессорный модуль с встроенными физическими входами и выходами. Коэффициент 1.

Пример 2:

ПЛК для объекта средней автоматизации в составе: 1 процессорный модуль, 1 коммуникационный модуль, 2 модуля ввода-вывода. Итого 4 модуля. Коэффициент 3.

Пример 3:

ПЛК для объекта крупной и ответственной автоматизации в составе: 2 дублируемых процессорных модуля, 2 дублируемых коммуникационных модуля; корзина удаленного ввода-вывода в составе: 2 дублируемых коммуникационных модуля, 1 коммуникационный модуль связи с оборудованием, 15 модулей ввода-вывода. Итого 22 модуля. Коэффициент 6.

Вывод: в такую оценку косвенно включается настройка коммуникаций, настройка диапазонов и типов аналоговых входов-выходов, возможная аппаратная фильтрация сигналов, настройка скоростных счетчиков и других специфических модулей. Таким образом можно определить примерные трудозатраты на конфигурирование ПЛК.

2. Программирование ПЛК.

Данный пункт разделяется на подпункты.:

- Количество сигналов

- Количество регуляторов

- Количество технологических алгоритмов

- Количество алгоритмов защит и блокировок

2.1 Количество сигналов

Чаще всего на практике трудозатраты по программированию ПЛК оценивают по количеству физических сигналов системы. Данная метрика даёт основное представление об объеме задачи. Следует разделять типы сигналов: дискретные входные, дискретные выходные, аналоговые входные, аналоговые выходные.

Для входных сигналов можно добавить коэффициент обработки сигналов. Так DI иногда могут фильтроваться (антидребезг и т.п.), а иногда нет. Для AI, например, может применять апериодическая фильтрация. Т.е. основной коэффициент умножаем на 1..2 – дополнительный коэффициент, показывающий процентное соотношение обрабатываемых сигналов (К= 1+Kп, где Кп 0-100% или 0.0-1.0)

Табл.для DI

-2

Табл. для AI

-3

Дополнительным коэффициентом для выходных сигналов может считаться кол-во сигналов с предварительной обработкой перед подачей на выход. Пример: арбитраж сигнала от конкретного алгоритма. Сюда не включаются регуляторы.

Табл.для DO

-4

Табл. для AO

-5

Пример 1:

Малая система автоматизации. 2 дискретных входных сигнала не требующих фильтрации, 7 аналоговых входных сигналов, не требующих обработки, 5 дискретных выходных сигналов, 4 из которых требуют арбитража сигналов, аналоговые выходные сигналы отсутствуют.

Получаем коэффициент по DI: 1*1= 1 (умножили на 1, т.к. отсутствует обработка)
Получаем коэффициент по АI: 2*1= 2 (умножили на 1, т.к. отсутствует обработка)
Получаем коэффициент по DO: 1*1.8= 1.8 (умножили на 1.8, т.к. 80% сигналов требуют обработки )
Получаем коэффициент по АO: 0*1=0

Итого получаем коэффициент для количества сигналов: 1+2+1.8=4.8

Пример 2:

Средняя система автоматизации. 55 дискретных входных сигнала, 10 из которых требуют фильтрации, 50 аналоговых входных сигнала, 30 из которых требуют обработки, 30 дискретных выходных сигналов, 20 из которых требуют арбитража сигналов, 5 аналоговых выходных сигналов, не требующих обработки.

Получаем коэффициент по DI: 4*1.18= 4.72 (умножили на 1.2, т.к. 18% сигналов требуют обработки)
Получаем коэффициент по АI: 5*1.6= 8 (умножили на 1.6, т.к. 60% сигналов требуют обработки)
Получаем коэффициент по DO: 5*1.67= 8.35 (умножили на 1.67, т.к. 67% сигналов требуют обработки)
Получаем коэффициент по АO: 3*1=3  (умножили на 1, т.к. отсутствует обработка)

Итого получаем коэффициент для количества сигналов: 4.72+8+8.35+3=24.07

2.2 количество регуляторов

В данном разделе рассматривается количество регуляторов. Сюда включаются PID-регуляторы, каскадные регуляторы и прочие. Здесь не следует рассматривать уникальные, самостоятельно разработанные регуляторы.

-6

Пример:

Средняя система автоматизации имеет 4 PID-регулятора поддержания давления, 2 PID-регулятора поддержания температуры, 1 каскадный регулятор включения котлов, 1 каскадный регулятор включения сетевых насосов.

Итого получаем 8 регуляторов. Коэффициент 4.

2.3 Количество технологических алгоритмов

Здесь рассматриваются отдельно выделенные технологические алгоритмы, являющиеся законченным единичным функционалом системы. Сюда включаются сложные логические операции управления системой исполнительных механизмов, уникальные, самостоятельно разработанные регуляторы, логические операции по изменению режимов работы, вспомогательные функции, протекающие во времени.

-7

Пример 1:

Малая система автоматизации. Тепловой пункт жилого здания. Имеется алгоритм переключения уставки температуры по календарю, алгоритм выбора действующих регуляторов в зависимости от параметров объекта управления, алгоритм архивирования данных на внутренний накопитель.
Итого 3 технологических алгоритма. Коэффициент 2.

Пример 2:

Средняя система автоматизация. Циклический процесс приготовления сырья. Имеется алгоритм выбора действий (конечный автомат), алгоритм архивирования данных, 6 алгоритмов для приготовления различных компонентов, алгоритм самодиагностики системы, алгоритм начала работы, алгоритм остановки системы.
Итого 11 технологических алгоритмов. Коэффициент 4.

2.4 Количество алгоритмов защит и блокировок

В данном разделе рассматривается количество алгоритмов защит и блокировок. Алгоритмы защит и блокировок – несложные логические операции, связанные с противоаварийным вмешательством системы в технологический процесс, имеющие приоритет перед технологическими защитами.

-8

Пример 1:

Малая система автоматизации. Тепловой пункт жилого здания. Имеется 1 алгоритм защиты – закрытие входной задвижки при низком давлении. Имеется 1 алгоритм блокировки – блокировать регулирование при высокой уличной температуре.
Итого 2 алгоритма блокировок и защит. Коэффициент 1.

Пример 2:

Средняя система автоматизации. Автоматика турбины. Имеется 13 алгоритмов защиты и 14 алгоритмов блокировок.
Итого 27 алгоритмов защиты и блокировок. Коэффициент 5.

Общий пример подсчета коэффициента ПО:

Для подсчета общего коэффициента сложности разработки прикладного программного обеспечения для ПЛК необходимо суммировать коэффициенты по пяти рассмотренным метрикам.

Пример:

Малая система автоматизации. Тепловой пункт.

1. Конфигурирование ПЛК: 1 процессорный модуль + 1 модуль ввода-вывода.
Коэффициент 2.

2. Коэффициенты разработки ПО.

2.1 Количество сигналов

2 дискретных входных сигнала не требующих фильтрации, 7 аналоговых входных сигналов, не требующих обработки, 5 дискретных выходных сигналов, 4 из которых требуют арбитража сигналов, аналоговые выходные сигналы отсутствуют.

Получаем коэффициент по DI: 1*1= 1 (умножили на 1, т.к. отсутствует обработка)
Получаем коэффициент по АI: 2*1= 2 (умножили на 1, т.к. отсутствует обработка)
Получаем коэффициент по DO: 1*1.8= 1.8 (умножили на 1.8, т.к. 80% сигналов требуют обработки )
Получаем коэффициент по АO: 0*1=0

Итого получаем коэффициент для количества сигналов: 1+2+1.8=4.8

2.2. Количество регуляторов

Всего 2 PID-регулятора. Коэффициент 2

2.3 Количество технологических алгоритмов

Имеется алгоритм переключения уставки температуры по календарю, алгоритм выбора действующих регуляторов в зависимости от параметров объекта управления, алгоритм архивирования данных на внутренний накопитель.
Итого 3 технологических алгоритма.
Коэффициент 2.

2.4 Количество алгоритмов защит и блокировок

Имеется 1 алгоритм защиты – закрытие входной задвижки при низком давлении. Имеется 1 алгоритм блокировки – блокировать регулирование при высокой уличной температуре.
Итого 2 алгоритма блокировок и защит.
Коэффициент 1.

Итого суммарный коэффициент: 2+4.8+2+2+1 = 11.8