книги из ГПНТБ / Лоскутов В.И. Основы современной техники управления
.pdfдо получения признака S осуществляется с помощью операции построения цикла, обозначаемой
где R — алгоритм, распознающий признак 5.
Схема операции построения цикла показана на рис. 50, д.
Операция |
продолжения |
ветви реализуется |
при наличии |
||||||||
двух заданных алгоритмов |
n |
|
M (у) |
и |
. |
|
|||||
К = |
|
А3 |
|
||||||||
С |
|
помощью операции продолжения |
ветви получают алго- |
||||||||
р и т м |
ы |
Аі(У)А3(У) |
и |
R |
Al(y) |
|
т |
|
|
|
|
|
|
А г (У) |
|
|
Л2(у)А3{у) |
|
|
|
|||
При построении сложных алгоритмических схем обязатель |
|||||||||||
ным |
условием |
должно |
быть |
наличие |
полноты |
элементарных |
|||||
алгоритмов и их непротиворечивости, т. е. каждый из входя щих в схему алгоритмов должен обладать точным выбором предписаний для получения искомого результата, а совместное применение нескольких элементарных алгоритмов не должно приводить к противоречиям.
Рационально построенный алгоритм управления обеспечи вает точное выполнение поставленной задачи с учетом наи меньшей сложности при его реализации.
В качестве оценки реализуемого процесса управления мо жет быть принята величина отклонения х регулируемой вели чины I от ее заданного значения.
Во многих случаях задающая величина связана с экстрему мом контролируемой функции. Таким образом, процесс управ ления будет оптимальным, если значение х в предыдущем выражении будет иметь нулевое значение.
Возможны самые различные типы оптимизируемых вели чин. В соответствии с этим разнообразны и критерии опти мальности, по которым ведется процесс управления объектом.
На практике часто встречаются автоматизируемые объекты, для которых в качестве критериев оптимума выбирается экс тремум функции регулируемой величины. В этом случае опре деление оптимума процесса связано с математическим иссле дованием соответствующего функционала или с решением многовариантной задачи.
Даже в условиях стационарности процесса на управляемый объект может воздействовать некоторая совокупность слу чайных возмущений, которая будет смещать течение процесса
250
из положения оптимума в его окрестности, образуя соответ ствующую область, с помощью которой можно оценить каче ство принятого алгоритма управления.
Эффективность работы системы можно определить по не которому показателю МК) характеризующему величину раз броса регулируемой переменной |:
Мк |
= |
^ Р — |
, |
|
I і о п т |
Sep I |
|
где | о п т — критерий оптимума |
процесса; |
||
^ с р — среднее значение регулируемой величины. |
|||
Ценность принятого |
алгоритма |
управления возрастает |
|
с уменьшением величины разброса переменной \, а следова тельно, и абсолютного значения разности ^опт—^ср»
14.
ПРОГРАММИРОВАНИЕ
Разработанный и окончательно проверенный на математи ческой модели алгоритм программируется и выражается в при нятых для этого терминах элементарных операций.
Таким образом, программа представляет собой полное и точное описание обработки информации в соответствующем коде для данной ЭВМ. С помощью такой программы обеспе чивается автоматическое решение поставленной задачи и по следующее формирование исполнительных команд.
При этом принятый алгоритм реализуется в машине с по мощью определенной последовательности арифметических и логических операций, задаваемых соответствующим набором
команд. Различают простые (линейные) |
и |
разветвляющиеся |
программы. |
|
|
Составление разветвляющихся программ зависит от исполь зования промежуточных результатов, когда возникает необ ходимость анализа различных вариантов вычислительного процесса.
Программа, задаваемая на языке конкретной машины, тре бует значительной затраты времени на свое составление и по следующую отладку ее на ЭВМ. Такая программа является описанием более общего, так называемого расширенного алго ритма, содержащего, кроме действий по его реализации, также некоторые вспомогательные операции для создания внутри машины команд при решении соответствующей задачи.
Команды и приказы, составляющие рабочую программу, как правило, записываются в виде числовых кодов. Таким об разом, работа вычислительного устройства разбивается на от дельные такты, в каждом из которых выполняется одна команда программы.
252
К началу очередного такта соответствующий приказ посту пает в блок управления, который путем автоматических пере ключений имеющихся схем реализует нужную арифметиче скую или логическую операцию.
Выполнение отдельных программ и их элементов во вре мени часто носит циклический характер. Машина по заложен ным в нее критериям и табличным данным следит за оконча нием соответствующих циклов и на основе логических оценок реализует установленную алгоритмом последовательность. При этом используются циклы без переменных команд и циклы с переадресацией.
Сокращение времени решения осуществляется за счет использования стандартных и циклических подпрограмм.
Часто используется блочный метод программирования. В этом случае сложная программа разбивается на блоки, кото рые в последующем объединяются в собирающую программу. При этом каждый блок программируется отдельно. Блочная структура программ облегчает ее отладку и увеличивает гиб кость программы, так как появляется возможность при не больших изменениях задания ограничиться переделкой всего, одного или нескольких блоков.
Необходимо отметить, что программирование на языке универсальных ЭВМ оправдывало себя лишь на первых эта пах внедрения современных средств вычислительной техники. В последующем возникли методы, позволяющие вводить в ма шину не рабочую программу, расписанную на машинном языке, а некоторую сокращенную информацию о программе, подлежащую дальнейшей расшифровке внутри самой машины. Так появились приемы автоматизации процессов программи рования.
Уже при эксплуатации первых типов ЭВМ начал широко использоваться метод библиотечных подпрограмм. Использо вание по ходу решения задачи этих заранее разработанных подпрограмм осуществлялось с помощью определенных пра вил и команд, предусмотренных в основной программе.
Этот, оправдавший себя на практике прием до сих пор используется в современных методах программирования.
Второй способ ускорения программирования связан с реа лизацией метода псевдокода. Псевдокодом называется система команд, как бы некоторой условной машины, в которой в ка честве элементарных операций выполняются операции более сложные, нежели в реальной машине, для которой состав ляется программа.1 В этом случае каждая из команд псев докода заменяется группой команд реальной машины. Как
253
правило, такая замена производится автоматически, и псевдо код в этом случае называется автокодом.
Дальнейшее развитие автоматизации программирования связано с описанием алгоритмов в терминах операторов и представлением их в виде операторных схем.
Выбор операторов и правила их описания привели к созда нию алгоритмических языков, значительно упрощающих как сами процессы программирования, так и их автоматизацию.
При автоматическом программировании особо актуален вопрос рационального использования библиотек стандартных программ и подпрограмм, хранящихся в памяти ЭВМ. Осуще ствляется это с помощью компилирующих и интерпретирую щих систем.
Компилирующая система состоит из библиотеки стандарт ных программ, каталога библиотеки и комплектующей про граммы. С помощью последней при необходимости осуществ ляется вызов и размещение в ОЗУ соответствующей стандарт ной программы и увязка ее с основной программой.
Интерпретирующая программа, хранящаяся в ОЗУ, осуще ствляет последовательный просмотр и выполнение команд основной программы.
При необходимости в оперативное запоминающее устрой ство вызывается соответствующая стандартная подпрограмма, которая немедленно выполняется. В интерпретирующей про грамме широко используются псевдокоды.
Метод компиляции отличается тем, что подпрограмма вы зывается только один раз, хотя выполняться она может мно гократно. Необходимость размещения вызываемой подпро граммы в ОЗУ требует большой емкости оперативной памяти ЭВМ.
Метод интерпретации является более простым и гибким. В этом случае в ОЗУ должна храниться только интерпрети рующая программа. Недостатком метода интерпретации яв ляется необходимость больших затрат времени на проведение указанных операций, так как вызов стандартных подпрограмм осуществляется все время заново.
Дальнейшее направление в автоматизации программирова ния связано с созданием компилирующе-переводных про грамм, базирующихся на алгоритмических языках. В этом случае исходные данные решения задачи записываются на соответствующем алгоритмическом языке. С помощью транс лятора (компилирующе-переводящей системы) эти данные фор мализуются и автоматически развертываются в машинную программу. В результате получается программа, записанная
254
в виде определенной последовательности команд конкрет ной ЭВМ.
Впрограммировании существенное место занимают про цессы подготовки и отладки программ. В настоящее время имеются методы, автоматизирующие и эти процессы. После ввода программы на одном из алгоритмических языков, осу ществляется контроль правильности написания программ, глав ным образом выявляются синтаксические ошибки.
Затем в машину необходимо ввести добавочную информа цию для исправления искаженных данных. Если программа составляется из нескольких модулей, то специальная про грамма объединяет их в одно целое.
Полученные результаты проверяются заранее подготов ленными тестами. При наличии положительных результатов программа передается в соответствующий раздел памяти машины.
Вавтоматизации процессов управления большое значение играет метод мультипрограммирования при одновременной переработке информации с ряда объектов.
Основная часть логики мультипрограммирования осуще ствляется с помощью направляющей программы-диспетчера.
Но в ряде случаев применяются также системы |
прерывания, |
основанные на аппаратном принципе. |
|
Система прерывания программы позволяет вести своевре менное управление вводом и выводом обменной информации, проводить анализ создавшейся обстановки и осуществлять за щиты от заранее оговоренных условий.
Такой режим работы связан с существенной экономией машинного времени, особенно для программ, основное время обработки которых занимают операции ввода-вывода. Очеред ность обработки программ в режиме мультипрограммирования определяется с помощью установленных для них приоритетов, задаваемых программистом.
Программа, основанная на реализации управляющих алго ритмов, в общем случае включает в себя как бы три само стоятельные подпрограммы: набор обменных подпрограмм, направляющую подпрограмму-диспетчер и набор обрабаты
вающих подпрограмм. |
|
В процессе управления обменные |
подпрограммы служат |
для ввода в машину исходных данных |
и вывода результатив |
ной информации в соответствующие моменты времени, опре деляемые характером работы внешних устройств. После полу чения и ввода в машину исходной информации управление пе редается основной программе.
255
В зависимости от сложности системы обменные программы строятся по непрерывному принципу или по принципу приори тетности. В последнем случае обменные операции с каким-либо источником информации могут прерываться абонентом с более высоким приоритетом. Прерванный обмен соответствующей информацией продолжается после окончания соединения с вклинившимся абонентом.
Направляющая подпрограмма определяет порядок работы обрабатывающих подпрограмм. Подключение их для реализа ции соответствующих алгоритмов управления выполняется с определенно принятой шкалой приоритетности для тех или других процессов, входящих в систему. Шкала приоритет ности при этом может оставаться неизменной или по ходу те чения процесса меняться во времени.
Вызов по требованию нужной обрабатывающей подпро граммы выполняется с помощью специальной команды, вслед за которой проверяется наличие ее вызова.
Каждая из обрабатывающих подпрограмм состоит из двух частей. Первая из них обеспечивает подготовку включения в работу рабочей части подпрограммы, а вторая осуществляет обработку информации по принятому для этого алгоритму.
Обрабатывающие подпрограммы включаются на различных стадиях решаемой задачи по команде, имеющейся в составе реализуемого алгоритма. Подпрограммы вызова включаются
вработу по заранее заданным моментам времени.
Впроцессе управления может использоваться ряд служеб ных обрабатывающих подпрограмм, реализуемых в зависи мости от различных внутренних условий работы контролируе мой системы. К их числу относятся тестовые подпрограммы, подпрограммы, связанные с реализацией некоторых контроль ных функций над управляемым объектом, подпрограммы переписи информации и т. д.
Построение сложной программы в виде совокупности авто номных независимых друг от друга подпрограмм обеспечивает гибкость и устойчивость работы всей системы.
Сложные системы управления большими комплексами со ответствующих объектов снабжаются также рядом специаль ных команд. К их числу относятся: программа выдачи операраторам инструкций о порядке и времени работы ЭВМ по отдельным задачам; программа выдачи информации о пра вильности работы машины; программа контроля за вводом и выводом информации и ее редактирование; программа дубли рования и защиты внутреннего архива; программа защиты расчетов от случайного вмешательства операторов; стандарт-
256
ные программы обработки больших массивов информации типа поиска, сортировки, подбора и т. д.; программа контроля и по явления ошибок в информации.
Сложные обрабатывающие программы иногда строятся в виде наборов частных обрабатывающих подпрограмм, объ единяемых отдельно выделенной для этого направляющей подпрограммой. В этом случае составление и отладка всей про граммы упрощается, так как можно вести независимое и па раллельное составление и отладку обрабатывающих подпро грамм.
Для управления несложными технологическими машинами с постоянно повторяющимися циклами программа состав ляется в кодах языка самой машины. По этому принципу строятся специализированные управляющие машины.
Большую роль в совершенствовании коллективных форм эксплуатации средств вычислительной техники будет играть создаваемый в настоящее время общесоюзный и отраслевые фонды алгоритмов и программ.
Отсутствие рекомендованных численных методов решения задач, а также различие в принятых методах шифровки и ко дирования исходных данных затрудняет обмен уже разрабо танными и используемыми алгоритмами и программами. По этому нормализация в общесоюзном масштабе кодов и ш и ф ров, а также разработка единых проблемно-ориентированных языков программирования является одной из важнейших за дач в этой области.
257
1 5 .
КРИТЕРИЙ ОПТИМАЛЬНОСТИ СИСТЕМЫ
Качество управления контролируемыми объектами опреде ляется своевременным выбором правильного или лучшего решения и степенью его реализации. Повышение качества управления часто связано с его автоматизацией.
Показатель качества работы автоматизированной системы управления можно представить как функцию ряда перемен
ных величин, воздействующих на управляемый |
процесс. |
|||
В общем случае основные переменные, определяющие тече |
||||
ние процесса, состоят из г-го количества входных |
переменных |
|||
z(t), k-то |
числа выходных |
переменных y(t), п-то |
числа управ |
|
ляющих |
воздействий |
x(t) |
и т - г о числа внешних |
возмущений |
U(t) = U'(t) + U"(t), из |
которых £/'(0 — измеряемые, a U"(t) — |
|||
неизмеряемые и неучитываемые возмущения. |
|
|||
Часто возмущения U(t) носят случайный характер, и по этому не могут быть выражены функцией времени. Это озна чает, что для любого значения t вектор U(t) является случай ной величиной. В том случае, когда вес случайных возмуще ний на объект незначителен, ими можно пренебречь, и процесс управления рассматривать как процесс детерминированный.
Для организации управления процессом необходимо знать математические соотношения, отражающие его физическую
сущность. Эти зависимости чаще |
всего выражаются алгебраи |
ческими или дифференциальными |
уравнениями: |
Q[(z*(9. Ы 9 . |
* М 0 . 9 = 0 . |
Одновременно должны быть сформулированы соотноше ния, определяющие ограничения и дополнительные условия, налагаемые на управляемый процесс.
Математически показатель качества е работы системы управления можно представить в следующем виде:
е = е [ г ( 9 , у (Г), x(t), 1/(01-
258
Здесь экстремум функции определяет собой оптимум управляемого процесса.
Для нахождения экстремума функции е необходимо при равнять нулю все ее частные производные по управляющим воздействиям:
^ |
dx |
|
|
п |
|
|
|
Нахождение оптимума качества |
работы |
системы ведется |
|
с учетом выявленных уравнений и |
ограничений, налагаемых |
||
на систему. |
|
|
|
Таким образом, критерий |
оптимальности |
функционирова |
|
ния системы представляет собой целевую функцию, экстремум
которой отыскивается при за |
|
|
|||||||
данных ограничениях. |
|
|
|
||||||
Из решения системы алго |
|
|
|||||||
ритмических |
уравнений |
мож |
|
|
|||||
но найти комплекс управ |
|
|
|||||||
ляющих |
сигналов |
|
x(t), |
как |
|
|
|||
функцию |
текущих |
координат |
|
|
|||||
переменных z(i), u(t), воздей |
|
|
|||||||
ствующих |
|
на |
систему |
|
|
|
|||
x(t) |
= |
^[z(t), |
u(t)]. |
|
|
||||
При несовпадении |
оптиму |
|
|
||||||
ма работы системы с экст |
|
|
|||||||
ремумом |
целевой |
|
функции |
Производительность |
|||||
пользуются |
критерием |
каче |
|||||||
|
|
||||||||
ства работы |
АСУ |
|
и |
мини |
Рис. 51. |
Зависимость качества |
|||
мизируют |
величину |
|
(е 0 дт—е), |
продукции |
от производительности |
||||
заставляя |
протекать |
контро |
|
установки |
|||||
лируемый |
процесс в этой зоне. |
|
|
||||||
На рис. 51 приведена характерная зависимость между про изводительностью большинства нефтеперерабатывающих и хи мических установок и качеством конечного продукта.
По |
действующему |
регламенту производства точка а яв |
|
ляется |
нижним пределом |
по качеству выходного продукта. |
|
В обычных условиях |
для |
предотвращения выпуска некаче |
|
ственного продукта установка работает при меньшей произво дительности, показанной на графике точкой Ъ. Применение автоматической системы управления позволяет ужесточить показатель качества работы объекта путем смещения зоны оптимума процесса к точке а и работать с повышенной произ водительностью установки.
259
