О специальном программном обеспечении автоматизированных систем управления технологическими процессами

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

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

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

Факторы, определяемые разработкой, можно представить в свою очередь такими факторами, как определенность, ясность, надежность и гибкость эксплуатируемого ПО.

Определенность базируется на полной спецификации проблем и документации

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

Ясность построения программы подразумевает простоту организации (программа должна легко анализироваться и использоваться). Этим фактором определяется минимальная стоимость сопровождения СПО на объекте.

Надежность в известной мере базируется на корректности программы, тестировании и допуске ошибок.

Гибкость (простота изменения, расширения и модификации) включает

понятия модульности структуры и портативности. Меру модульности программы отчасти можно выразить числом подпрограмм, включенных в нее. Под портативностью программ понимается легкость перемещения их из одной среды в другие. Решение проблемы портативности может быть осуществлено при соблюдении принципа разработки программного обеспечения: никогда не использовать в программе зависимых характеристик и свойств конкретной среды.

Организационные факторы не связаны непосредственно с разработкой какой-то программы (системы), а являются общими в программировании. К ним относятся: стандартизация, подготовка персонала техника программирования, руководство разработкой.

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

Подготовку персонала можно представить принятой системой подготовки кадров программистов и пользователей ПО (образование), стремлением их к совершенствованию в процессе работы, системой установленных или сложившихся взаимоотношений в процессе работы (окружение).

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

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

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

Требования ОС сводятся к выполнению некоторых правил и к учету ограничений. Разработаны следующие правила:

  • распределения программ (задач) по приоритетам, составленные с учетом ограничений на длительность работы программ при одном включении;
  • использования рабочих зон памяти и регистров программируемых логических контроллеров (ПЛК), обеспечивающие взаимную развязку программ в мультипрограммном режиме; обращения к ОС автоматизированных систем; объединения программ в задачи.

Постоянная составляющая времени определяется минимальным време­нем реализации программы (fmln) — временем реализации программы по наикратчайшему логическому пути; временем, затрачиваемым супервизором на запуск и завершение программы (при нулевой очереди готовых к выполне­нию программ); расположением программы в исполнительной области ОЗУ (что в ряде случаев определяет число используемых ячеек связи в нулевой странице в случае размещения программы в нескольких страницах ОЗУ);

Временем на внутренние нужды супервизора (при нулевом списке задач, запускаемых, по времени и отсутствии устройства, для которых супервизором выполняется контроль их работоспособности по допустимому времени выполнения операций.

Полученную функциональную зависимость для приближенной оценки временных затрат на выполнение рабочих программ в составе ОС целесообразно использовать на этапе проектирования ПО АСУ ТП для построения и анализа временных диаграмм с целью определения соответствия протекания технологического и вычислительного процессов; определения пиковых участ­ков загрузки процессора, уточнения состава, организации и функциональных свойств программ; определения требований к расширению возможностей стандартных ОС и к составу и характеристикам технических средств автоматизированных систем; формулирования рекомендаций, ориентированных на уменьшение времени выполнения программы.

Как видно из приведенных формул, основными способами уменьшения времени выполнения программы в составе ОС РВ являются:

  • минимизация времени для инициативных программ (в работе достигается с помощью диспетчера инициативных сигналов, осуществляющего запуск программ по соответствующему адресу описателя задачи, за счет чего время запуска уменьшается на время обращения к супервизору (до 200 мхе), и на время);
  • увеличение периода прерываний системного таймера (учитывая, что при этом ухудшаются точностные характеристики операций измерения и выдержки временных интервалов, способ применим в системах с низкими требованиями к точностным характеристикам данных операций, для остальных систем целе­сообразна разработка специальных программ службы времени);
  • уменьшение затрат на внутренние нужды супервизора (достигается уве­личением периода прерываний системного таймера; уменьшением списка задач, вызываемых по времени; уменьшением числа устройств, для которых назначается тайм-аут);
  • оформление программ и виде резидентных в ОЗУ систем управления технологическими процессами;
  • уменьшение объемов диск резидентных программ;
  • запрещение операции замены SWAPPING для диск-резидентных программ, время выполнения которых соизмеримо с временем считывания соответствующих копий с диска;
  • размещение описателя программы в начальных позициях таблиц ОС (достигается определенным порядком загрузки программы при генерации ОС или использованием зарезервированного описателя с помощью перемещающего загрузчика);
  • запрещение операций ввода-вывода при выполнении программ (достигается маскированием сопряжении, к которым подключены устройства ввода-вывода, и запрещением модификации счетчиков тайм-аута);
  • повышение приоритета программы;
  • запрещение прерываний при выполнении программы.

Важным требованием является многократное использование программ. Во всех случаях, связанных с инициацией от событий, происходящих в реальном времени, существует большая вероятность того, что выполнение програм­мы будет прервано задачей более высокого приоритета. Как и в других ана­логичных случаях прерывания программ, для возобновления работы програм­мы после выполнения служебной программы прерывания должны сохраняться промежуточные результаты и рабочие области ОЗУ. Однако, поскольку пре­рывающей программе могут понадобиться данные от прерванной програм­мы, должны быть приняты специальные меры по сохранению целостности данных программ, т.е. сохранению промежуточных результатов и рабочих областей.

Простейший способ гарантировать целостность данных программы — не прерывать ее выполнения. Это можно делать маскированием всех преры­ваний на время выполнения, тем самым предотвращая их распознавание.

Другой способ обеспечения целостности подпрограммы состоит в присое­динении копии подпрограммы к каждой вызывающей ее программе. При этом, выделяя в памяти особое место для хранения параметров и рабочие зоны, можно избежать разрушения данных в прерванной подпрограмме, но увели­чивается сложность подпрограммы. Данный способ предусматривает примене­ние подпрограмм с так называемым повторным входом (реентерабельные подпрограммы): их составляют таким образом, чтобы все данные и промежу­точные результаты были отделены от собственно подпрограммы; иными словами, сама подпрограмма допускает только считывание. Данные и промежу­точные результаты адресуются через базовый адрес. Если программа преры­вается, а прерывающая программа требует применения подпрограммы, ба­зовый адрес заменяется, благодаря чему вызываются соответствующие зона данных и рабочая зона.

Еще один способ заключается в применении запираемой подпрограммы. Здесь индикатор отмечает первый вход в подпрограмму. Если подпрограмма прервана и нужна прерывающей программе, использование подпрограммы прерывающей программой запрещается. Для ликвидации такой ситуации (тупика) используется ряд методов. Все они предполагают задержку преры­вающей программы, или «заказчика»; и разрешение выполнения прерванной программы, или «владельца», т.е. подпрограмма заканчивает заказ, который в данное время исполняется. В операционных системах управляющих ЦВМ систем управления технологическими процессами чаще всего просматривается очередь «заказчиков» и выполняется прерывание уровня данного «владельца» с переходом к уровню «заказчика» самого высо­кого приоритета.

Иногда применяется более совершенный метод проталкивания приоритета». По этой схеме «владелец» временно поднимается до уровня «заказчика» самого высокого приоритета, пока не будет завершено выполнение подпрограммы для него, а затем спускается снова на свой уровень и подпро­грамма передается «заказчику» с самым высоким приоритетом.

Требования системы программирования включают в себя:

  • правила обозначения подпрограмм, зон рабочей памяти, констант и табличных функций, а также глобальных и локальных переменных, вытекающие из особенностей входных языков и компиляторов;
  • правила распределения программной и числовой информации в памяти программируемых логических контроллеров (ПЛК), ограничения и рекомендации по организации зон памяти и массивов обрабатываемой информации, по упаковке мало разрядных переменных;
  • ограничения, налагаемые на объемы транслируемых блоков программы и массивов обрабатываемой информации;
  • правила использования библиотеки стандартных алгоритмов и программ; правила выполнения условных и безусловных переходов, управляющего и информационного взаимодействия между отдельными подпрограммами и задачами;
  • рекомендуемые для данного класса задач стандартные приемы программирования и записи алгоритмов, ускоряющие процесс разработки программ и упрощающие чтение технической документации.

К   требованиям системы отладки относятся следующие компоненты:

  • требования и рекомендация по выбору объема отдельных подпрограмм и массивов обрабатываемой ими информации и требования к этому выбору, направленные на обеспечение возможности использования средств автоматизации процессов отладки;
  • требования к полноте обозначений переменных и направлений переходов в программе (особенно при непрямой адресации), направленные на обеспечение возможности трассировки различных маршрутов хода программы.
  • требования и рекомендации по использованию рабочих зон памяти и ре­гистров ПЛК при программировании на языках низкого уровня (ассемблер­ных) и требования к ним, направленные на обеспечение удобства анализа и регистрации промежуточных результатов вычислений при отладке;
  • правила использования в программе специальных маркерных команд фиксации адреса или других приемов, позволяющих следить за ходом вы­полнения программы в процессе ее комплексной отладки в реальном масшта­бе времени;
  • требования и рекомендации, направленные на обеспечение возможности использования при отладке программы специального технологического обо­рудования и встроенных в ЦВМ аппаратных средств обеспечения отладки. Требования системы функционального контроля;
  • требования к структуре отдельных блоков программы и правила их про­граммирования, направленные на обеспечение возможности повторения от­дельных команд или участков программы с целью локализации и устранения последствий аппаратных сбоев ПЛК автоматизированных систем;
  • требования к размещению программной и числовой информации в за­поминающих устройствах промышленных компьютерах систем управления технологическими процессами, направленные на повышение устойчивости системы к сбоям и отказам аппаратуры;
  • правила использования средств аппаратного и аппаратно-программного контроля промышленных компьютеров;
  • правила программирования процедур программно-логического контроля; правила использования обнаруживающих и диагностических тестовых программ в различных режимах работы системы;
  • правила программирования процедур обращения к внешним устройст­вам программируемых логических контроллеров (ПЛК), позволяющие своевременно обнаруживать сбои и отказы в этих устройствах;
  • правила программирования процедур взаимодействия компрессированных промышленных компьютеров систем управления технологическими процессами и процедур резервирования наиболее важной информации, обеспе­чивающие непрерывность процессов управления внешними абонентами при отказах отдельных элементов вычислительного комплекса.

Новости

Вторая очередь. Линия производства цветных принтерных чернил общим объемом 2000 литров - проектирование и поставка автоматической системы управления, г. Эгль, Швейцария

26.12.24

Линия производства цветных принтерных чернил общим объемом 2000 литров - проектирование и поставка а...

Паровые автоклавы, автоматика и диспетчеризация автоклавного цеха консервного производства, г. Гатчина, Ленинградская обл.

26.12.24

Паровые автоклавы, автоматика и диспетчеризация автоклавного цеха консервного производства, г. Гатчи...

Установка обработки труб химическим антикоррозийным составом - проектирование и поставка автоматической системы управления, г. Санкт-Петербург

26.12.24

Установка обработки труб химическим антикоррозийным составом - проектирование и поставка автоматичес...

Заказчики
Поставщики