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

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

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

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

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

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

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

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

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

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

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

По способу программной реализации МО (ПО) иногда разделяют на внешнее и внутреннее. При этом внутреннее МО программно реализуется непосредственно на данной ЦВМ, внешним МО считается такое, для программной реализации которого используются другие промышленные компьютеры, как правило универсальные (обычно обладающие большей вычислительной мощностью и более развитым программным сервисом).

 

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

 

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

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

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

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

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

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

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

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

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

Управление ресурсами - одна из основных функций любой операционной системы. Вычислительная машина располагает ресурсами 4-х видов: время центрального процессора; память; устройства ввода-вывода; программное обеспечение.

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

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

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

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

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

Семафоры можно использовать и для синхронизации. Например, процесс 1 может попросить процесс 2 выполнить некоторую работу. До тех пор, пока процесс 2 не закончит работу, процессу 1 нечего делать. Поэтому он обращается к операции Р (ожидание), где ожидание-это семафор с начальным значением, равным нулю. Когда процесс 2 заканчивает работу, он сообщает об этом процессу 1, выполнив для этого операцию В (ожидание). Тогда процесс 1 может продолжать работу. Такой способ в принципе не отличается от способа использования критического участка, так как процесс 2 можно рассматривать как ресурс, защищенный семафором ОЖИДАНИЕ. Однако при использовании семафоров для синхронизации и управления ресурсами возникают трудности, связанные с организацией очереди к семафору.

Другие приемы синхронизации с понятием почтовый ящик. Название почтовый ящик происходит от обычного приспособления для отправки почты. Почтовый ящик -это информационная структура, для которой задаются правила, описывающие эту работу. Он состоит из головного элемента, в котором находится описание данного почтового ящика, и из нескольких гнезд, в которые помещают сообщения. В простейшем случае сообщения передаются только в одном направлении. Процесс Р1 может посылать сообщения до тех пор, пока имеются свободные гнезда. Если все гнезда заполнены, то процесс Р1 должен ждать, либо заняться другими делами и попытаться послать сообщение позже. Аналогично процесс Р2 может получать сообщения до тех пор, пока имеются свободные заполненные гнезда. Если сообщений нет, то он может либо ждать сообщений, либо продолжать свою работу.

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

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

  1. Алгоритм FIFO-обслуживание в порядке поступления требований. Новые заявки помещают в конце очереди, а первыми обслуживаются заявки, находящиеся в ее начале. Чтобы определить очередь, достаточно знать месторасположение первой заявки и число заявок в очереди.
  2. Алгоритм LIFO является как бы обратным алгоритму FIFO. Здесь последняя пришедшая заявка обслуживается первой. Данный алгоритм используют для организации так называемой магазинной памяти, что часто является весьма необходимым для некоторых элементов ОС на промышленных компьютерах.
  3. Круговой циклический алгоритм RR. По этому алгоритму заявки обслуживаются некоторым устройством (например, процессором) в порядке их поступления, причем каждая обслуживается обычно в течение некоторого кванта времени (квант обслуживания). Если работа, соответствующая заявке, например, программа в процессоре, была выполнена в течение этого кванта времени, то заявка покидает очередь. В противном случае заявка ставится в конец имеющейся очереди, где она будет ожидать дальнейшего обслуживания.
  4. Алгоритм FBN. Согласно этому алгоритму организуется N очередей. Поступившая заявка на обработку занимает конец первой очереди.

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

Новости

Модернизация системы измерения температурных режимов автоклава паровой вулканизации РТИ, Санкт-Петербург

09.09.17

В сентябре 2017 года компанией РИТМ выполнялись работы по замене термопар и программированию системы...

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

08.09.17

В сентябре 2017 года компанией РИТМ выполнялись сборочные работы партии шкафов управления и централи...

Проектирование и поставка шкафов управления КНС, суммарной производительностью 260 куб.м/час, г. Лабытнанги

14.08.17

В августе 2017 года компанией РИТМ были выполнены работы по разработка проекта, сборке и программиро...

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