Батенко А.П. Системы терминального управления (1984) (1246767), страница 26
Текст из файла (страница 26)
' Н ' . Р $33 ВЪ 3 'Н 33 ' 3 Н Э Н Н Н Н Н Н Н Н Н Н Н Н Н Н Н О Н Э Э Н Н Э Н Н Н а 128 ОВ И ч - с ВМ + ВИ И вЂ” С В и с :С Н ° $$ о 4Н $$ НЪ 1 !В Н ВН и о 1$ ОВ В О -м ° Н ИЪ 3 ° ° ВВ ° !Э!И Ч + 31 И $$ О Н $3 И И ВН В ч 'Н ВО О Г » о о в х ВН Программа МА(Л', подпрограммы ОРТ1М, ОР)1 и РООР приводятся полщи шю. Тексты подпрограмм )7А)гУ и ВЖО)1МД! приведены выше. В заключение сделаем несколько замечаний. Обращения к подпрограммам и а,юиснмости от характера решаемой задачи могут изменяться нользавателем. Для того чтобы найти максимум функции многих переменных в тексте подпрограммы ОРТ1М оператор 0067 необходимо заменить на следующий 1Р ()' — )г1) 15, 16, 16.
Если решается задача без ограничений, то из текста подпрограммы ОРТ1М ~задует удалить оператор 0064 н изменить обращение к подпрограмме ОРТ1М, Тлзлив из него формальный параметр. П1.!О. ПОДПРОГРАММА БЫСТРОГО ВЫЧИСЛЕНИЯ ИНТЕГРАЛОВ При оптимизации управлений часто используются интегральные критерии качества Т 1= ~) (1) бг (П1.10.1) о Интегрирование (П1.10.1) методом Рунге — Кутта связано' с большими за~рзтами машинного времени, так как функция качества при случайном поиске вычисляется многоиратно.
Для быстрого вычисления интеграла (П1.10.1) используем квадратурную формулу Гаусса (55). 12 11 Рис. П1,3 Пусть имеется нормированная подынтегральная функция 1(г), изооражени.щ на рис. П1.3. Площадь под кривой вычисляется ио следующей формуле: 1 = А г)' (Г~) + А з7" (Гз) + А зГ (Гз), (П1.10.2) глс Г! — — — (/0,6' Ге=0 Гз= ~/О 6; Аз=Аз=б 9 Аз=819. Как видим, для вычисления интеграла (П!.10.1) необходимо знать величииу подынтегральной.функции всего в трех точхах.
Формула (П1.10.2) справедлива в том случае, если подыитегральная функция иа участке ( — 1, +1) достаточно точно аппроксимируется полинамом не выше питой степени. При большом интервале, на котором вычисляется интеграл, н достаточно сложной форме подынтегральнай функции это требование может не выполняться. В таком случае участок интегрирования (О, Т) разбивается на несколько более коротких участков и для вычисления интеграла на каждом из иих используется формула (П1.10.2). Интеграл (П!.10.1) вычисляется с помощью стандартной подпрограммы, обращение к которой имеет вид САЛАГ.
РК (Т, К1, РВ). Здесь Т вЂ” участок интегрирования; К1 — количество интервалов, на ко торос разбивается участок интегрнровзния; Р1. — переменная, которой присваивается вычисленное значение интеграла на участке (О, Т). 5 заи. !зз! 129 Подпрограмма ГК обращается к подпрограмме РГ, вычисляющей интеграл на каждом из участков. Обращение к ней имеет вид САП, РГ (А)1, АК, 81), где АЛ( — начало участка; А К вЂ” конец участка; 51 — переменная, которой присваивается вычисленное значение интеграла на участке [АУ, А К], Подпрограмма РГ обращается к подпрограмме ГТ1, вычисляющей значение подынтегральной функции.
Обращение к ней имеет вид СА11. ГТ1 (Т1, ГГ), где Т1 — значение аргумента (0 при котором вычисляется величина подынтс. гральной фупкцки; Гà — переменная, которой присваивается вычисленное зна. чение подынтегральной функции.
Параметры, необходимые для вычисления подынтегральной функции, могут передаваться в подпрограмму ГТ1 через область СОММОА( или список формальных параметроз. В последнем случае они добавляются к спискам формаль. ных параметров подпрограмм ГК, РГ и ГТ1. Текст подпрограммы ГТ1 опреде. ляется конкретной задачей. Подпрограммы ГК и РГ не меняются, ниже приводится их текст. 50ИХО)11НЕ ЕК(тгК1еЕНС) ОЗОЬСЕ РЯЕС151ОЧ Т ЕЧС ОХ АА ЛКь$1 ОХ=ТIК1 ЕЧС=И-ОИ Ам=И-ОИ АХ=ОХ ОО Т 1=1,КТ (АСС ОЕ (АкаАКл51) ЕЧС=ЕЧС+51 АИ=АИ+ОХ Т АК АК+ОХ ИЕТОЧЧ ЕМО 5)ЭХЗНТ)ЧЕ ОЕ(АЧ,АК,51) ООПЬСЕ РЯЕС1510И Аивакт$1 ° Агдмгвд ° Т(лЕЕ О(ЧЬЧ)ТОЧ т)(З)та(5) А(Т) =И 55555555556О0 А(2)=И ЬЧИ8ЬРИ5559 О0 А (5) ьа (1) АХ=И 5ОИ*(АЬ АЧ) ОА-"И 225(ИЗ ОИчдя Т((Т) =АчсОА Т)(Г)=АЧЕАМ т 1(5) =ак-ОА $1=И-ОИ ОО 1 1=1 1 ГАС( 1 Т) (Т1 ( 1 ) гЕЕ) Т 51ь$1ЕЕЕ ° А(Е) 5 (=51ьЛМ яетпач ЕИО 130 П1А1.
ПОДПРОГРАММА КОНТРОЛЯ ВЫПОЛНЕНИЯ ОГРАНИЧЕНИЙ Подпрограмма предназначена для проверки выполнения ограничений, заданных в виде неравенств: х1 няп ~4', хт «х( мах~ ..., хгм(а»«хг «» хг шах )1 м( и «1т (хт ° хг) «)1 мах Гч аяа » «Гч (Хт " ° хг) е 1ч пмх При нарушении хотя бы одного неравенства признаку нарушения ограничепнй Ь0 присваивается значение единица. Обращение к подпрограмме САУЛ. СОУЕГМ (К00, 0У, 0)Т, РХ, Ь0). Здесь К00 — количество ограничений (количество строк в заданной системе ограничений); 0)Г ( ) — массив размерности К00, содержащий значения верхних границ; 0)Т () — массив размерности К00, содержащий значения нижних границ; РХ(') — массив размерности К00, в который до обращения к подпрограмме должны быть засланы проверяемые функции; Е0 — признак нарушения ограничений (Е0 = 1, если хотя бы одно ограничение нарушено, Е0 = 6.
если ни одно из ограничений не нарушено). При обращении к подпрограмме параметру Е0 необходимо присвоить значение нуль. Ниже приводится текст подпрограммы СО)т'ЕУЯ(, включающий 11 операторов. Она используется в подпрограмме Р00)2. 5ОВХОВТ1МЕ СОМЕ!И(КООгбчгВМРЕХгЕ6) ОООВЕЕ РПЕ(1$1ОМ ЕЧ ЕМРЕХ О1МЕМ$1ОЧ тх(5)г6т (1)г6М(3) ОО 2 1=! КОО 1 Е ( Е Х ( 1 ) -67 (1) ) 1 г! Я) Т 1Р(ЕХ(1)-6М (1))3 2 2 2 СОМТ1МПЕ 60 ТО а 3 Ейх! 4 ае'тпцч. '5 ЕВО П1.12. ПОДПРОГРАММА ВЫЧИСЛЕНИЯ СТАНДАРТНЫХ КОЭФФИЦИЕНТОВ ХАРАКТЕРИСТИЧЕСКОГО ПОЛИНОМА Качество регулирования обычно связывают с динамическими характеристикачи переходных функций систем: перерегулнрованием и временем переходного процесса.
Перерегутирование, в свою очередь, определяется величиной декремента затухания характеристического полинома. Приводимая здесь подпрограмма КОНР вычисляет стандартные коэффициенты характеристического полинома произвольного порядка, обеспечивающие требуемые значения декремента затухания $ и времени переходного процесса Тя. Обращение к подпрограмме САЕЕ КОНР (!Л, 0Е2, ТР). Здесь П2 — степень характеристического цолннома; РЕ7. — декремеит затухания; ТР— время переходного процесса в секундах. 131 Порядок характеристического палинома пе должен превосходить 23 (1К < ~ 23).
Если требуется вычислить коэффициенты полинама более высокого порядка, то в тексте подпрограммы следует изменить размерность массива В1, задаваемую оператором О1МЕУ31ОУ. Размерность этого масснва должна пз единицу превосходить максимально возможный порядок полинома.
Значение декремента затухания должно лежать в пределах 0 ( ОЕ2 (!. Хорошо демнфированлые системы получаются, если величину ОЕ2 задавать равной 0,8 — 0,95. Не следует задавать РЕЗ слишком близким к единице, так нак при 5 — ь 1 параметр п, входящий в (3.25), стремится к бесконечности (см. 9 3.3). Ниже приводится текст программы для вычисления стандартных коэффициентов и переходной функции характеристического полппома. В качестве примера был взят характеристический полкном седьмой степени (1К = 7) с декрсментом затухания $ = 0,9 (ОЕЕ = И.ООИ) и временем переходного процесса Т„= 10 с (ТР =- ! И О И).
Подпрограмма КОНР вычисляет и выдает на печать параметры У и ОТ, соответствующие заданным значениям декремента затухания ОЕЕ и времени переходного процесса ТР. 11араметр У представляет собой переменную и, входящую в (3.25) и вычисляемую с помощью (3.9). Параметр ОТ вЂ” пе что иное, как аТ. также входящий в (3.25). Рассчитывается бТ по (3.35).
Найденные значе. ния и и 71Т используются для вычисления по (3.25) коэффициентов характеристического полинома рт + Ь,рс + Ь,рз + Ь,р' + Ь,Р' + Ь,р' + Ь,р + Ь,. (П1.12.1) Коэффициенты выдаются на печать в следующем порядке: Ье, Ьт, Ь„..., ..., Ь„т, Ь„. Последний коэффициент, стоящий перед старшим членом полинома, всегда равен единице. Поэтому перед приравниванием выражений для этих коэффициентов полученным стандартным значениям с целью нахождения неизвестных параметров системы передаточную функцию необходимо привести к такому виду, чтобы ее характеристический полипом имел стандартаый вид (П1.12.1).
С помощью данной программы удобно исследовать свойства синтезируемых объектов, изменяя декремент затухания ОЕХ. Переходная функция х (1) получается в результате решения следующего дифференциального уравнения: х!г) — -- Ь, (10 — х) — Ь, х — Ьз х —... — Ь, ! х(' (П1.12.2) она выдается иа печать с интервалом НРК. В приводимом тексте программы печать происходит через 0,5 с (НРК =- И.ЗО И).
Длительность интегрирования определяется величиной ТК, которая задана в 1,5 раза большек требуемого времени переходного процесса ТР. При необходимости пользователь может изменять эти параметры па своему усмотрению. Программа использует следующие подпрограммы: КОНР, РОВ, КК, РКС. Назначение первых трех подпрограмм известно. Последняя вычисляет правые части для подпрограммы интегрирования дифферевциальных уравнений КК Следует обратить внимание на то, что в подпрограл~ме КК (П!.6) изменено обращение к подпрограмме вычисления правых частей; САЕЕ РКСН (УРОК). Это сделано для того, чтобы передать параметр УРОК в подпрограмму РКС. Параметр УРОК, как известг|о, задает порядок объекта и необходим подпрограмме РКС для организации вычисления правых частей системы дифференци.
альных уравнений первого порядка, полученной из (П1.12.2). Ниже следует текст основной программы, подпрограмм РКС и КК (с изменениями). Текст подпрограммы РОВ, которая используется подпрограммой КОНР, берется без изменений из П1.!. 132 О т О.' Х Х В'4 а Ю О. О 4 С ° О 4\ ° сч О >. в О в 3 В - ОВ В $ сс а а ХХ М м. а Х Ю Х 4 В .'С О. в х О а Х ~зз Ф О 33.
в Э Ф от Э ОВ аа ° 4Ч ОВ ОВ о- О. ХВВЛ В -ОВ О и-а ыь- а ао а~ .э с 44 Х -Во а ФХХ ВО ° оо ма исл ы О. $ ° 4 в Ю сс а о О. 333 а О вт ° Оооан Х О ОВ 3$ м 3 а ОВ О-ВО ааааа И ° О Х С.В в Ю в в СВ СВ ив~ ОВ О ООВ МЪ В ° О а вава ° В- $4Х $ ОВ О О ХО,О. Втвтд ВХ т т Ъ О а 34 оа а а в 3 ° .
во- О Х 44 Э.ОВ ~- а с3 43 Вс а в сс оч с В-В 3-44 в вах Х в-Фх В" О. а ОВ С ОВ $ а В а сс О к ° - О О ОВ С'4 - 44 В ОВ ю с о $-Х Ь4О ХОО О 3 Ц а о О. Х с» 3 о ЪО ВО 44 ОО авт 4$ ООВ ° С о о О О е о х се «4 У Х а м 4 Ъс С С к х х о с Ф а О О с см Ф с с 4Ч го Ф 4 О сс Ф Ме а о ес х И 44 к а ° 4« со Ю К 4 Ч Ме еч а и Ф м с к С о Ф ее. «С с с к еч 4 ем О с ей а ° г с с м ес Ме 4« н с з ко ° 4 4 ем Ст и ХНОН ° Фак \О ° и а е сс ° о о сс Е О с ер «.
4Ч ° З ° ° О е 4М К гй н З ко й м ° с З Ф е. ем с йм к ° ал ° « СМ ° а ЧЗЗ ° ° И И т а и 4Ч СС ахха « 4Ч и О 4 аз с 4 О с й ю а 4 с са Ч 4- м ° и Х О Ф а О Ф О и х 4« СМ 4М сс к ° ма 4 О СМ О з «с й й о О О иа Ф м Се 44 С сс к З 4 «Ч че Ме О М х ок 4 О м сс Х 44 к Се е ем е го ха «с Ф О а а с р ° с . с«с 4« ° З М с с С«О Е 4Ч 4' О ° КЧ СЗ 4 С СВ етчемиа ° а и ал З О ° 4 ° «ОС ° ° о ° Осч ' О ««Ей«С« ° Е'4 кеес« ййт а, а ««а Веейе 4«КОМОес ОСССОСС йкФ надай ххаик 4Ч м е л с г «, х ч Н М й нс М а ° Э ! М ! 'Н Н' а 3 о« ло а с О сы а сн а« а ч а М с Н О О О ° л 3'С ° Х Н И И «л М «« х Н « а + а « и ° Р 3 ! и а' Н х 3Ч М Н Нс и Н 3 а «о И: ° х с ы ы о ! Ны «О Н ° + о а а ! ° « Ф ы ы м ФОХ а а оо а О ч н Ф оы О« ОВ сы О а са с' б! Н ИН НР Ъ н а 3 О с Н а « а Ю ° Н л ° л М ° 3' м а л ° см «сы 3 ° Н Ы 3- Нс ФОЪ то к « «а оо С «И ю оа ! о ъг И: сэ З Нс т Ф С т «3 лк ч Н' к с а 3- 3 Ч л о х с а 3 «Е х « И |й Ф сы Нс а ° о сн ФС О и О Р 'Н о э х «О Нс аса ° «Члы« «Ф 3 3- Ъ.