Министерство образования и науки Республики Казахстан Павлодарский государственный университет им. С. Торайгырова В. А. Бороденко ПРАКТИЧЕСКИЙ КУРС ТЕОРИИ ЛИНЕЙНЫХ СИСТЕМ АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ Nyquist Diagram 2 1.5 1 Imaginary Axis 0.5 0 -0.5 -1 -1.5 -2 -2.5 -2 -1.5 -1 -0.5 0 0.5 Real Axis Павлодар 2007 1 1.5 2 УДК 681.5(075) ББК 32.965.4я73 Б83 Рекомендовано Ученым советом ПГУ им. С. Торайгырова Рецензенты: В.Ф Хацевский – доктор технических наук, профессор, зав. кафедрой АиУ ПГУ им. С. Торайгырова П.И. Сагитов – доктор технических наук, профессор, зав. кафедрой ЭАПУ АИЭС Г.М. Никитин – доктор технических наук, профессор, Инновационный Евразийский университет Б83 Бороденко В.А. Практический курс теории линейных систем автоматического регулирования: учеб. пособие. – Павлодар: Изд-во ПГУ, 2007. – 263 с., ил. ISBN 9965-583-14-5 Учебное пособие соответствует программе лекций по теории линейных систем автоматического регулирования для бакалавров. Оно рассматривает основные вопросы дисциплины с упором на их практическую реализацию и снабжено примерами расчета систем автоматического управления или их компьютерного моделирования в количестве, достаточном для самостоятельного овладения материалом. Пособие предназначено для студентов специальности «Автоматизация и управление» и может быть полезно студентам, инженерам и магистрантам других специальностей при изучении основ теории автоматического управления. ISBN 9965-583-14-5 УДК 681.5(075) ББК 32.965.4я73 © Бороденко В.А., 2007 © Павлодарский государственный университет им. С. Торайгырова, 2007 Содержание 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 4.1 4.2 4.3 4.4 Введение ........................................ 5 Математические модели линейных систем регулирования.9 Задачи теории автоматического управления ............ 9 Структурные преобразования ........................10 Дифференциальное уравнение системы ................17 Преобразование Лапласа ............................ 19 Передаточная функция ............................. 23 Решение уравнений движения системы ................ 25 Разомкнутая и замкнутая системы .................... 27 Типовые воздействия ...............................30 Временные характеристики ..........................32 Частотные характеристики .......................... 33 Логарифмические частотные характеристики ...........37 Устойчивость линейных систем ...................... 40 Условия устойчивости линейных САУ ................ 40 Критерий Гурвица ................................. 43 Критерий Рауса ................................... 45 Критический коэффициент усиления .................. 47 Критерий Михайлова ...............................48 Метод D-разбиения ................................ 51 Критерий Найквиста ............................... 53 Логарифмический критерий устойчивости ............. 57 Запасы устойчивости ............................... 59 Качество процессов регулирования ................... 61 Показатели качества и методы их оценки .............. 61 Прямые оценки качества ............................61 Корневые оценки качества .......................... 64 Метод корневого годографа ......................... 66 Частотные оценки качества ..........................67 Интегральные оценки качества .......................68 Оценка качества в установившемся режиме ............ 70 Коэффициенты ошибок .............................72 Построение переходного процесса по ВЧХ .............74 Многомерные системы регулирования .................77 Переменные состояния .............................77 Переход к пространству состояний ................... 78 Каноническая управляемая форма .................... 83 Каноническая наблюдаемая форма ....................85 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 6.14 6.15 6.16 6.17 Описание по структурной схеме ...................... 87 Представление системы структурной схемой ........... 91 Решение уравнения движения ........................95 Основные матричные функции .......................97 Вычисление фундаментальной матрицы ............... 98 Устойчивость и наблюдаемость систем ................ 101 Наблюдатели ..................................... 105 Проектирование модального регулятора ............... 108 Преобразования подобия ............................111 Синтез систем автоматического регулирования ......... 115 Функциональная и структурная схемы ................ 115 Типовые динамические звенья ....................... 117 Непрерывные регуляторы и законы регулирования ...... 125 Свойства объектов управления .......................127 Линеаризация нелинейных объектов .................. 129 Корректирующие звенья ............................ 131 Синтез систем регулирования по ЛАЧХ ............... 134 Системы регулирования с запаздыванием .............. 135 Классификация систем управления ....................138 Компьютерное моделирование систем управления ...... 143 Моделирование систем управления на ЭВМ ............143 Пакет программ LinCAD ............................ 146 Основы MATLAB ................................. 153 Специальные операторы и функции .................. 158 Графические средства MATLAB ..................... 162 Программирование в MATLAB ...................... 166 Математические модели систем управления ............172 Структурные преобразования модели ................. 180 Визуальное моделирование ..........................190 Моделирование временных характеристик ............. 193 Моделирование частотных характеристик ..............204 Оценка устойчивости линейных систем ................209 Оценка качества процесса регулирования .............. 223 Создание модели в пространстве состояний ............ 235 Особенности исследования многомерных систем ........239 Проектирование регулятора в пространстве состояний ... 241 Преобразования базиса ............................. 249 Литература ....................................... 254 Приложение А Расчет числителей простых дробей ...... 256 Приложение Б Основы алгебры матриц ................259 Введение Настоящее пособие имеет следующие особенности. Теоретический материал излагается в последовательности, привязанной к проведению практических и лабораторных занятий. Специфика расписания занятий в ВУЗе такова, что практика проводится не после изучения значительной части теории, а параллельно с ним. Поэтому, например, классификация систем управления рассматривается не в начале работы с пособием, когда у студента еще отсутствует знакомство с терминологией и основными понятиями, а в конце его, тогда как структурные преобразования, необходимые для практической деятельности, изучаются сразу же в начале курса. Важные положения, как правило, даны в виде словесных формулировок, что позволяет студентам при необходимости давать краткие ответы по существу на вопросы преподавателей или тестов. По возможности исключены словесные выражения типа «... это и называется тем-то и тем-то», особенно когда «это» представлено в виде непонятной сложной формулы. Отсутствуют и ссылки на формулы предшествующих разделов пособия, что обычно заставляет тратить время на поиск и нарушает непрерывность процесса изучения. Большинство вопросов излагается конспективно и раскрывается лишь в той мере, в какой это необходимо для понимания и решения возникающих перед специалистом проблем. В основном отсутствуют доказательства тех или иных положений, что определяется справочным характером пособия. Необходимые отступления и примеры даются более мелким шрифтом, полезные сведения, например, из области высшей математики, вынесены в приложения. Учитывается, что отдельные положения подробно рассматриваются в смежных курсах. Теоретические вопросы поясняются примерами ручного счета, в то же время даны необходимые сведения по порядку анализа и синтеза систем с применением ЭВМ. В качестве среды для компьютерного моделирования систем управления выбрана матричная лаборатория MATLAB (версия 7) фирмы The Math Works, кратко рассматривается программный продукт LinCAD, созданный при участии автора. Материал по пространству состояний вынесен в отдельный раздел, что позволяет для одних специальностей исключить его из рассмотрения, для других – перенести на следующий семестр. Список рекомендуемой литературы ограничен, в основном, доступным фондом библиотеки университета, что не исключает его расширения самими учащимися. Как и любой учебник, данная работа преимущественно компилятивна и базируется на большом количестве 5 учебной литературы, в частности [1-18], в связи с чем ссылка на использованный источник дается лишь в особых случаях. Знакомство с предметом принято начинать исторической справкой. Впервые сведения об автоматах появились в начале нашей эры в работах Герона Александрийского "Пневматика" и "Механика", где описаны автоматы, созданные самим Героном и его учителем Ктесибием: пневмоавтомат для открытия дверей храма, водяной орган, автомат для продажи святой воды и др. В средние века значительное развитие получила так называемая "андроидная" автоматика, объединяющая созданные механиками человекоподобные автоматы, подражающие отдельным действиям человека [16]. На рубеже ХVIII и XIX веков, в эпоху промышленного переворота, начинается новый этап в развитии автоматики, связанный с ее внедрением в промышленность. Появились первые автоматические устройства, к которым относятся регулятор уровня Ползунова (1765 г.), регулятор скорости паровой машины Уатта (1784 г.), система программного управления ткацким станком Жаккара (1804-1808 гг.) и т.д. Этим было положено начало регуляторостроению. В 1854 г. выдающийся русский механик и электротехник К. Константинов предложил использовать в паровых машинах электромагнитный регулятор скорости вращения, а А. Шпаковский в 1866 г. разработал регулятор, изменяющий подачу топлива в топку соответственно изменению давления пара в котле. В 1879 г. Й. Возняковским и К. Ворониным впервые был осуществлен принцип прерывистого регулирования при управлении питанием котла водой. Если первые регуляторы были связаны с паровой машиной, то со второй половины XIX в. существенную роль в регуляторостроении начинают играть потребности в электрическом освещении. Так, в 60-е годы в работах В. Чиколаева впервые был применен электрический двигатель, а в 1874 г. он предложил и осуществил метод регулирования, составляющий основу современной электромашинной автоматики. В то же время постепенно начинают формироваться важнейшие принципы автоматики: принцип регулирования по отклонению Ползунова-Уатта, развившийся в концепцию обратных связей; принцип регулирования по нагрузке, послуживший основой теории инвариантности, и др. Начиная с курса профессора Петербургского университета Д. Чижова в 1823 г., теория регуляторов входит составным элементом в курсы и монографии по механике и паровым машинам. Общая теория регуляторов была разработана, в основном, в 1868-1876 гг. в работах Д. Максвелла и И. Вышнеградского. Основополагающими трудами Вышнеградского являются: "Об общей теории 6 регуляторов", "О регуляторах непрямого действия". В этих работах можно найти истоки современных инженерных методов исследования устойчивости и качества регулирования. Исследованию устойчивости ряда схем регулирования, в частности, непрямого регулирования с жесткой обратной связью, были посвящены также работы словацкого инженера А. Стодолы. В этот же период сформулированы алгебраические критерии устойчивости Рауса и Гурвица. Бурный рост промышленности отражается и на развитии работ в области теории регулирования. В конце XIX в. и начале XX столетия создаются новые виды электромеханических регулирующих приборов, такие, как программные регуляторы, следящие системы и схемы компаундирования. Так, в 1877 г. А. Давыдов разработал проект первой следящей системы автоматической наводки артиллерийских орудий. В 1882 г. на Промышленно-художественной выставке в Москве был показан прототип современного программного регулятора, разработанного Н. Захаровым. До настоящего времени используется принцип "установления допустимых предельных значений регулируемого параметра", предложенный в 1884 г. Л. Снегуровым. В этот же период развивается параметрическое регулирование: разработаны дифференциальный регулятор В. Чиколаевым и схема компаундирования генераторов М. Доливо-Добровольским. Большое значение для развития теории регулирования имели исследования А. Ляпунова. Опубликованная им в 1892 г. работа "Общая задача устойчивости движения" явилась важной вехой в развитии теории устойчивости. В ней А. Ляпунов дал первое в истории науки математически строгое определение устойчивости движения, а также разработал методы решения задач об устойчивости. Крупный вклад в теорию внес Н. Жуковский, который создал теорию орбитальной устойчивости на основе вариационных принципов динамики, а также дал математическое описание процессов в длинных трубопроводах, рассмотрел влияние сухого трения в регуляторах, исследовал некоторые процессы импульсного регулирования. Им написан первый русский учебник "Теория регулирования хода машин" (1909 г.). К началу XX в. и в первом его десятилетии теория автоматического регулирования формируется как общая дисциплина с рядом прикладных разделов. Особенно четко мысль о теории регулирования как дисциплине общетехнического характера проводится в работах И. Вознесенского (1922-1949 гг.) – руководителя одной из крупных советских школ в этой области, который в 1934 г. впервые выдвинул принцип автономного регулирования. Данный период также характеризуется развитием вопросов автоматического регулирования произ- 7 водства и распределения электрической энергии, в частности, работами С. Лебедева и П. Жданова в области устойчивости энергосистем. В тридцатые годы XX в. создаются более эффективные методы исследования, в частности, частотные. Появляются работы X. Найквиста (1932 г.), содержащие критерий устойчивости радиотехнических усилителей с обратной связью, и А. Михайлова (1938 г.) "Гармонический метод в теории регулирования", которые вошли в практику в послевоенные годы. В 1946 г. Г. Боде и Л. Маккол ввели в практику логарифмические частотные характеристики. Г. Браун, А. Холл, Д. Кемпбелл, Г. Честнат, В. Солодовников завершили разработку частотных методов синтеза и расчета систем, придав им форму, удобную для инженерных расчетов. В 40-50-е годы разрабатываются основы теории нелинейных систем, сложность которых состоит в отсутствии единого общего математического аппарата. Здесь следует отметить работы по устойчивости А. Лурье (1944-1951 гг.), А. Летова (1955 г.). Завершающим этапом этого направления считается разработка теории абсолютной устойчивости, выдвинутой А. Лурье и В. Постниковым (1944 г.), более детально сформулированной М. Айзерманом (1949, 1963 гг.) и усовершенствованной румынским ученым В. Поповым (1959 г.). Большое значение для качественного исследования нелинейных систем имеют методы фазовой плоскости и фазового пространства, основы которых заложены А. Андроновым и его школой в 1930-1940 гг. Я. Цыпкиным разработаны основы теории релейных (1955 г.) и импульсных (60-е годы) систем с различными видами модуляции. Н. Крыловым и Н. Боголюбовым (1934 г.) разработан метод гармонического баланса для определения параметров автоколебаний и условий их возникновения. В послевоенные годы теория автоматического управления развивалась плодотворно и во многих направлениях, в силу чего возможно упомянуть лишь некоторые результаты: теория автоматического регулирования по возмущению, теория компенсации возмущений и инвариантности разработаны в трудах Г. Щипанова, В. Кулебакина, Б. Петрова и др.; принципы экстремального управления и теория поиска экстремума разработаны В. Казакевичем, А. Фельдбаумом, А. Красовским. В эти же годы создаются основы теории оптимального управления Л. Понтрягиным, А. Летовым, Н. Красовским и др. В настоящее время значение теории автоматического управления переросло рамки только технических систем. Ее элементы используются при изучении процессов в живых организмах, экономических и организационных человеко-машинных системах. 8 1 Математические модели линейных систем регулирования 1.1 Задачи теории автоматического управления В общем смысле управление – это организация некоторого процесса для достижения поставленной цели. Управление оптимально, если в условиях имеющихся ограничений оно осуществляется в известном смысле наилучшим образом. Оно называется терминальным, если требуется достичь заданной конечной точки в пространстве. Общую схему управления отображает рисунок 1. Здесь ОУ – объект управления, УУ – управляющее устройство, f(t) – возмущающее воздействие (возмущение, помеха), y(t) – выходная или управляемая величина (отклик, реакция), u(t) – управляющее воздействие (управление), r(t) – задающее воздействие (цель, задание, программа). Все, что не относится к объекту управления и управляющему устройРисунок 1 ству, считается окружающей средой. В соответствии с желаемым результатом процесса, формируемым с помощью задания r(t), УУ вырабатывает управляющее воздействие u(t) на ОУ. К возмущениям относятся все те факторы, которые нарушают нормальную работу системы и влияние которых необходимо устранить. Неизмеряемое возмущение называется помехой, возмущение, обусловленное технологическим процессом – нагрузкой. Как правило, производится контроль реакции объекта на управляющие воздействия для коррекции характера этих воздействий, тогда как непосредственный контроль возмущений может и отсутствовать. Системы, сравнивающие результат управления с заданием, относятся к системам с обратной связью (по-английски Feedback Control System). Объект управления характеризуется функцией преобразования (передачи) – законом, по которому входные величины f(t) и u(t) преобразуются им в выходную y(t). Управление называют автоматическим, если основной технологический процесс осуществляется полностью без участия человека, и автоматизированным, если функции управления поделены определенным образом между человеком и машиной (имеется в виду ЭВМ). Совокупность объекта управления и управляющего устройства образует систему управления (СУ). К автоматическим СУ относятся САУ – система автоматического управления, САР – система автома- 9 тического регулирования, САК – система автоматического контроля; к автоматизированным АСУ – автоматизированная система управления, АСУП – АСУ производством, АСУТП – АСУ технологическим процессом, САПР или, по-английски, CAD – система автоматизированного проектирования. Обычно, если не требуется специально разграничить эти системы, под САУ и САР подразумевают одно и то же. Регулированием называется частная задача управления, состоящая в отработке задающего воздействия без выбора его характера. Теория автоматического управления (ТАУ) является теоретической базой автоматизации в любых отраслях науки и техники. Она изучает принципы построения САУ независимо от их назначения, конструкции, физической природы. Основным методом исследования в ТАУ является математическое моделирование – физическую систему заменяют ее математической моделью, результаты эксперимента с которой переносят на реальный объект. Наибольшие трудности представляют обычно этапы перехода от реального объекта к модели и возвращения от модели к реальной системе. Следует помнить, что абсолютно точного совпадения модели и реальной системы добиться невозможно, речь может идти лишь о степени их сходства. Физические системы, имеющие математические модели одинакового вида, называются подобными. В число задач, решаемых ТАУ как наукой, входят проблемы оценки устойчивости и качества регулирования, исследования чувствительности к изменению внешних и внутренних параметров систем, синтеза оптимальных по структуре или характеристикам регуляторов (управляющих устройств), коррекции свойств систем управления, выбора законов регулирования и методов построения моделей. 1.2 Структурные преобразования Общая функция преобразования системой входных величин в выходные (передаточная функция) зависит от состава образующих систему элементов и характера связей между ними. Для анализа или синтеза систему представляют структурной схемой, состоящей из звеньев, ветвей, узлов и сумматоров. Звено или блок обычно изображается прямоугольником, имеющим слева вход, справа выход с указанием функции преобразования внутри прямоугольника. Функция передачи может указываться в общем виде Wi, ki или в виде некоторой зависимости, например, k/(Ts+1), для линейных звеньев, и в форме статической характеристики или условного изображения – для нелинейных звеньев. 10 Узлы обозначаются на графической схеме точкой с диаметром 1,5 - 2 мм, они соответствуют месту разветвления сигнала. Ветвь (связь) представляется линией со стрелкой в конце, отображающей направление движения сигнала. Сумматоры (элементы сравнения) представляют собой места схождения сигналов. Они обозначаются либо пустым кружком среднего размера (крупнее узла), либо крупным кружком, перечеркнутым крест накрест прямыми линиями. Сумматор, как правило, имеет не более трех входов, не более одного выхода и коэффициент передачи k = 1. Все входы сумматора независимы друг от друга. Если на входе сумматора производится изменение знака сигнала (инвертирование), т. е. по этому входу коэффициент сумматора равен минус единице, вход называется инвертирующим, а сумматор – элементом сравнения. Такой вход сумматора обозначается минусом для изображения в виде пустого кружка, и затушеванным сектором для обозначения в виде крупного кружка. Как правило, при известных функциях передачи отдельных звеньев требуется найти эквивалентную передаточную функцию (ПФ) некоторого объединения звеньев (объекта, регулятора), либо всей системы в целом. Для этого используют правила структурных преобразований, и в первую очередь три правила преобразования последовательного, параллельного и встречно-параллельного соединений. 1) Последовательное соединение звеньев. Эквивалентная передаточная функция последовательно соединенных звеньев равна произведению передаточных функций этих звеньев. Соединение Преобразуется в Передаточная функция W=W1∙W2 В общем виде n W Wi i 1 Считают, что перестановка последовательно включенных по пути сигнала звеньев не влияет на результат, т. е. W1W2 = W2W1. 2) Параллельное соединение звеньев (согласно-параллельное). Соединение Преобразуется в Передаточная функция W=W2 ± W1 В общем виде n W Wi i 1 11 Эквивалентная передаточная функция параллельно соединенных звеньев равна сумме передаточных функций этих звеньев (с учетом знака входа сумматора на пути сигнала). 3) Соединение с обратной связью (встречно-параллельное). Вначале введем несколько необходимых определений. Путь – непрерывная последовательность направленных звеньев, в которой ни одно звено не встречается дважды. Путь от входа к выходу системы называется прямой связью, от выхода ко входу – обратной связью. Если сигнал на пути меняет знак (обычно на инвертирующем входе сумматора), обратная связь называется отрицательной (ООС), если не меняет знак – положительной (ПОС). Замкнутый путь называется контуром, например, замкнутый контур обратной связи (ЗКОС). Сигнал ООС вычитается из входного сигнала ЗКОС. Эквивалентная передаточная функция соединения с обратной связью равна дроби, в числителе которой записана ПФ звена на прямом пути, а в знаменателе – единица минус произведение ПФ звеньев по замкнутому контуру обратной связи. Соединение Преобразуется в Передаточная функция W1 W1 W W 1 n 1 W1W2 1 W 12 i 1 i Важно запомнить характерные особенности этого вида соединения звеньев: - если в системе есть хоть одна обратная связь, передаточная функция будет всегда представлять собой дробь; - знак перед произведением ПФ звеньев в знаменателе обычно противоположен знаку обратной связи. n Величина 1n 1 Wi называется определителем ЗКОС. i 1 4) Перенос воздействий в системах с перекрещивающимися связями (правило структурных преобразований, применяющееся, если система включает соединения смешанного типа – не чисто последовательные, и не чисто параллельные). Чтобы результирующая система не изменилась, в цепь переносимого воздействия вводят фиктивное звено с ПФ, равной передаточной функции потерянных, либо обратной передаточной функции приобретаемых при переносе звеньев. Смысл правила состоит в том, что любые изменения по сравнению с исходной схемой, появляющиеся в системе после ее преобразования, не должны влиять на результирующую передаточную функ- 12 цию. Заметим, что при наличии обратных связей следует особенно внимательно подходить к переносу сумматоров или их обходу. Рассмотрим систему такого рода (рисунок 2, а) а б Рисунок 2 Из схемы следует, что нельзя, в частности, объединить звенья W2 и W3, как последовательно включенные, из-за связи в точке m. Перенесем ветвь из узла m в узел n. В исходной схеме на пути от точки m к входному сумматору не было звеньев, преобразующих сигнал, тогда как в новой схеме на пути между теми же точками появляется звено с передаточной функцией W3. Следовательно, в цепь переносимого воздействия нужно ввести фиктивное звено с обратной передаточной функцией, т. е. 1/W3 или W3-1 (рисунок 2, б). После переноса начнем свертывание схемы, заменяя каждый раз несколько звеньев одним эквивалентным на основе правил 1-3 и увеличивая границы преобразуемого участка. Промежуточные (вспомогательные) ПФ обычно индексируют римскими цифрами, их используют временно и обязательно заменяют в итоге на ПФ с реально существующими индексами. W I W2W3 ; W II W1W2W3 ; 1 W2W3 W1W2W3 W1W2W3 W1W2W3 1 W2W3 1 W2W3 W . W1W2W3 1 1 W2W3 W1W2 1 W2W3 W1W2 1 1 W2W3 W3 1 W2W3 Конечный результат всегда представляется в виде простой рациональной дроби и выражается только через исходные передаточные функции. Сигнал не может пройти через одну и ту же точку дважды, поэтому появление в выражении кратных величин вида 2Wi или Wi2 и т. п. является признаком допущенной при преобразованиях ошибки. 5) Правило Мейсона (Mason, 1953 г.). Правило рассматривает систему как ориентированный граф и позволяет описать ее всю сразу, без преобразований по отдельным 13 фрагментам, что следует считать его достоинством. Недостаток – отсутствие каких-либо признаков (как в предыдущем правиле), указывающих на допущенную ошибку, пропущенный путь или контур. Формула Мейсона имеет вид W 1 Wïð ,i i , i где Wпр,i – передаточные функции отдельных прямых путей между заданными входом и выходом, ΣWi – сумма передаточных функций всех контуров, Δ = 1 – ΣWi + ΣWiWj - ΣWiWjWk + … – главный определитель схемы, Δi – главный определитель после изъятия из схемы i-го прямого пути, с учетом исключения и других параллельных путей, начинающихся или заканчивающихся в общих с изымаемым путем точках, ΣWiWj, ΣWiWjWk и т.д. – суммы произведений двух, трех и более передаточных функций контуров, не соприкасающихся друг с другом. Структурная схема представленной на рисунке 3 системы регулирования имеет три замкнутых контура обратной связи с передаточными функциями WI = -W3W10, WII = -W6W9, WIII = -W2W3W4W9 (минус учитывает прохождение через инвертирующий вход сумматора). Рисунок 3 Передаточные функции прямых путей от входа u к выходу y, учитывая, что сигнал не может пройти дважды одну и ту же точку: Wпр1 = W1W6W5; Wпр2 = W7W4W5; Wпр3 = W1W2W8; Wпр4 = W1W2W3W4W5; Wпр5 = -W7W10W8; Wпр6 = -W7W4W9W2W8 (минус для инвертирующего входа сумматора). Отметим, что два последних пути и второй ЗКОС могли бы остаться незамеченными и выпасть из описания, что и является недостатком правила Мейсона. Знаменатель ПФ (главный определитель системы) Δ = 1 – (WI + WII + WIII)+ (WI∙ WII) = 1+W3W10+W9W6+W2W3W4W9+W3W10W9W6. 14 Частные определители: Δ1 = 1 – WI = 1 + W3W10 (не равен 1, так как с изымаемым первым прямым путем не имеет общих точек контур I), Δ5 = 1 – WII = 1 + W6W9 (не равен 1, так как с изымаемым пятым прямым путем не имеет общих точек контур II), остальные частные определители равны единице, поскольку с соответствующими прямыми путями соприкасаются все три ЗКОС схемы. Осталось подставить найденные выражения в общую формулу W W1W6W5 (1 W3W10 ) W7W4W5 W1W2W8 W1W2W3W4W5 1 W3W10 W9W6 W2W3W4W9 W3W10W9W6 W7W10W8 (1 W9W6 ) W7W4W9W2W8 . 1 W3W10 W9W6 W2W3W4W9 W3W10W9W6 При описании структурной схемы по Мейсону можно воспользоваться и словесной формулировкой, особенно удобной для описания простых систем. Передаточная функция многоконтурной системы образует дробь, числитель которой равен сумме произведений передаточных функций прямых путей на совокупные определители ЗКОС, не касающихся этих путей, а знаменатель – единица минус сумма произведений определителей несоприкасающихся ЗКОС и передаточных функций общих ЗКОС. Порядок системы одинаков для всех путей через нее, поэтому, если контуры обратной связи не касаются прямого пути, это отражается на числителе ПФ, если не касаются друг друга – на ее знаменателе. Рассмотрим в качестве примера знакомую систему (рисунок 2, а). При составлении полинома числителя передаточной функции убеждаемся, что все замкнутые контуры обратной связи касаются прямого пути (он в системе один). Это условие выполняется, поэтому умножать произведение ПФ звеньев прямого пути W1W2W3 на какиелибо определители ЗКОС не требуется. При составлении полинома знаменателя передаточной функции убеждаемся, что все замкнутые контуры обратной связи касаются друг друга (имеют общий участок), тогда единица на все контуры одна, что и наблюдается в рассматриваемом примере. Следовательно, записываем в знаменателе единицу и далее плюс-минус произведения ПФ звеньев по каждому ЗКОС W W1W2W3 . 1 W2W3 W1W2 Для системы (рисунок 4) определим две передаточные функции, т. е. характер преобразования по двум путям сигнала через нее. 15 При числе передаточных функций более одной их помечают подстрочными индексами, указывая первым обозначение (индекс) выхода, а втоРисунок 4 рым – обозначение (индекс) входа. Соответственно, найдем передаточные функции для выходов y и e относительно входа r. Первая передаточная функция равна Wyr W1W2 W1W2 . (1 W1 )(1 W2 ) 1 W1 W2 W1W2 Оба ЗКОС касаются прямого пути, поэтому полином числителя передаточной функции содержит лишь произведение ПФ звеньев на прямом пути от входа к выходу. Однако контуры обратной связи не касаются друг друга, т. е. являются независимыми. Поэтому в знаменателе сначала описывается один контур обратной связи (и все сопряженные лишь с ним, если бы таковые имелись), а затем этот определитель умножается на определитель ЗКОС, не соприкасающегося с ним (и сцепленные с этим контуром ЗКОС, если бы таковые имелись). Единица в числителе второй ПФ соответствует передаточной функции сумматора, через который проходит сигнал на пути от входа r к выходу e. Она умножается на определитель замкнутого контура обратной связи со звеном W2, не касающегося прямого пути от r к e. Wer 1 (1 W2 ) 1 W2 . (1 W1 )(1 W2 ) 1 W1 W2 W1W2 Обсудим сразу необходимость сокращения одинаковых сомножителей 1 – W2 в числителе и знаменателе передаточной функции. Их сокращение кажется естественным, поскольку в рассматриваемом случае сигнал явно не проходит через звено W2. Тем не менее, производить сокращения в общей передаточной функции системы не рекомендуется, так как при этом снижается порядок описывающей ее модели, т. е. из поля зрения выпадают реально существующие в ней звенья, которые могут влиять на поведение системы, например, ее устойчивость. (Не следует путать с обязательным сокращением знаменателей сложных дробей при промежуточных преобразованиях). Кроме того, из-за сокращений неверно определяется реакция системы на ненулевые начальные условия. Поэтому обычно и раскрывают все скобки в числителе и знаменателе ПФ, получая многочлены. В заключение вернемся к системе, показанной на рисунке 3. Ее передаточная функция представляет собой дробь (есть по меньшей 16 мере одна обратная связь), в числителе которой записана сумма произведений ПФ звеньев по всем шести прямым путям сигнала, причем ПФ первого пути умножаем на определитель не соприкасающегося с ним контура (1 + W3W10), а ПФ пятого пути – на определитель не соприкасающегося с ним контура (1 + W9W6). Контуры обратной связи I и II не соприкасаются друг с другом, но оба имеют общие точки с контуром III, поэтому в знаменателе дроби сначала перемножаются определители независимых ЗКОС I и II, а затем к ним добавляется (с учетом знака обратной связи) сопряженный контур III, а именно Δ = (1+W3W10 )(1+W9W6 ) + W2W3W4W9 = 1+W3W10+W9W6+W3W10W9W6+W2W3W4W9. 1.3 Дифференциальное уравнение системы Определим предмет изучения. Это линейные, непрерывные, стационарные, одномерные системы с сосредоточенными параметрами. У непрерывных элементов выходная величина изменяется плавно при плавном изменении входной величины. Важным свойством линейных систем является применимость к ним принципа суперпозиции. Он заключается в том, что реакция системы на любое сочетание воздействий равна сумме реакций на каждое из этих воздействий в отдельности. Математический аппарат, используемый для описания линейных систем, проще, чем для нелинейных. Поскольку реально в мире существуют только нелинейные системы, то для изучения их предварительно некоторым образом линеаризируют. Линеаризацией называется такое упрощение математического описания объекта, при котором его параметры становятся постоянными величинами или отображаются линейными зависимостями. У стационарных систем коэффициенты и параметры – это постоянные величины, не являющиеся функциями времени. Характеристики любых систем со временем меняются, однако, поскольку мы проводим анализ в течение короткого отрезка времени, возможные изменения параметров за этот период считаются несущественными. Одномерные системы и объекты описываются по методу «один вход – один выход» (SISO – Single Input Single Output) с помощью передаточной функции. Для многомерных объектов и систем управления с несколькими входами или выходами чаще используется векторноматричное описание. Если выходные величины зависят друг от друга, системы называются многосвязными. 17 Наконец, элементы систем (емкость, сопротивление) будем условно считать сосредоточенными в одной точке, хотя реально это и не всегда так, например, для протяженных линий электропередачи или водопроводов необходимо учитывать распределение параметров по длине объекта – это системы с распределенными параметрами. Поведение линейных, непрерывных, стационарных систем с сосредоточенными параметрами описывается во времени обыкновенным дифференциальным уравнением (ОДУ) с постоянными коэффициентами ai, bj a0 d n y(t ) d n1 y(t ) d m x(t ) d m1 x(t ) a ... a y ( t ) b b ... bm x(t ) , 1 n 0 1 dt n dt n1 dt m dt m1 где слева – выходная функция y(t) и ее производные (результат), справа – входная функция x(t) и ее производные. В этом смысле запись соответствует расположению результата и действий при программировании, или записи подстрочных индексов передаточной функции. Данное уравнение можно записать в алгебраизированном виде, используя оператор (символ) дифференцирования p ≡ d/dt, что позволяет производить с дифференциальным уравнением алгебраические операции – выносить члены за скобки, складывать, умножать и т. п. (a0 pn + a1 pn-1 + ... + an ) y(t) = (b0 pm + b1 pm-1 + ... + bm ) x(t). Здесь слева в скобках – собственный оператор объекта, справа – оператор входа (воздействия). При этом в алгебраизированном уравнении используются, как правило, не сами величины x и y, а их абсолютные ∆y/∆x или относительные ∆y/y0, ∆x/x0 отклонения от рабочей точки c координатами (x0, y0). Оператор D(p) = a0 pn + a1 pn-1 + ... + an называется также характеристическим, так как характеризует собственные свойства системы (объекта), а уравнение D(p) = a0 pn + a1 pn-1 + ... + an = 0 – характеристическим уравнением системы. Удобным способом записи дифференциального уравнения является операторная передаточная функция b0 p m b1 p m1 ... bm W ( p) . a0 p n a1 p n1 ... an Она отображает действия, которые необходимо произвести с входной величиной данного объекта, чтобы получить выходную величину. При этом следует иметь в виду, что оператор p ≡ d/dt лишь облегчает запись дифференциальных уравнений, но не дает способа их 18 решения – y(t) и x(t) остаются функциями времени. Он не обладает свойством коммуникативности: можно записать p∙y(t), но нельзя y(t)∙p. 1.4 Преобразование Лапласа В ТАУ основным инженерным методом решения дифференциальных уравнений, т. е. исследования поведения систем во времени, является преобразование Лапласа. Его преимущество заключается в том, что операции дифференцирования и интегрирования оно заменяет более простыми алгебраическими операциями умножения и деления. Из-за необходимости вычислять корни характеристического уравнения преобразование Лапласа целесообразно использовать лишь для систем до четвертого порядка, решать ОДУ более высокого порядка удобнее численными методами на ЭВМ. Рассмотрим принцип решения дифференциальных уравнений с помощью преобразования Лапласа. На первом этапе производят прямое преобразование X(s) = L{x(t)} – от функции времени переходят к функции комплексной переменной Лапласа s = σ + jω = α + jβ. Здесь ω = 2πf – это известная из электротехники круговая частота, рад/с. Далее решают алгебраическое уравнение реакции, для чего находят собственные значения системы, т. е. корни характеристического уравнения D(s) = 0, и по теореме разложения определяют коэффициенты числителей простых дробей, на которые в соответствии с собственными значениями разлагается реакция. В конце вычислений выполняют обратное преобразование Лапласа x(t) = L-1{X(s)} – от функции переменной s возвращаются к функции переменной t. Общее обозначение описанных операций x(t)÷X(s), где слева строчными буквами изображена функция времени (оригинал), справа, прописной буквой – функция комплексного переменного (изображение), а между ними стоит символ соответствия (ни в коем случае не равенства, что будет являться грубой ошибкой!). Практически все функции электротехники и ТАУ соответствуют требованиям к оригиналу (функция кусочно-непрерывна на участке исследования, равна нулю при t < 0 и ограничена функцией Me 0 t , где σ0 – абсцисса абсолютной сходимости). Иногда для обозначения оператора дифференцирования p ≡ d/dt и комплексной переменной s = σ + jω = α + jβ используют один и тот же символ p, что может приводить к недоразумениям или неправильным результатам. Мы будем далее использовать отдельные обозначения. Приведем без доказательств свойства преобразования Лапласа. - Линейность x(t) + y(t) ÷ X(s) + Y(s). 19 - Однородность kx(t) ÷ kX(s). - Подобие x(t ) s X . 1 - Дифференцирование оригинала x (t ) s X ( s ) x(0 ) Полином, отражающий начальные условия x(t ) s X ( s ) s x(0 ) x (0 ) 2 При нулевых начальных условиях (значениях переменных в момент t = 0-, уже существующих в системе) запись упрощается x ( n ) (t ) s n X ( s ) . Дифференцированию оригинала соответствует умножение его изображения на s в степени, равной порядку дифференцирования (производной). - Интегрирование оригинала t t 1 x ( ) d X (s) s 0 Учет начальных условий x( )d 0 s t 0 При нулевых начальных условиях запись упрощается (интегрированию оригинала соответствует деление его изображения на s) t 1 x( )d s X ( s) . 0 - Запаздывание (смещение) оригинала во времени на величину τ > 0 x(t ) e s X ( s ) . - Смещение изображения на комплексной плоскости на величину λ x(t ) e t X ( s ) . - Начальное значение оригинала (при t = 0+), вычисляемое (обратите внимание на то, что в выражении использован знак равенства, а не соответствия) lim x(t ) lim s X ( s) . t 0 s 20 Для вычисления начального значения производной по времени от функции x(t) n-го порядка производится умножение изображения на sn+1 lim xn (t ) lim s n1 X ( s) . t 0 s Пример: определим начальные значения функции F(s) и ее производной F ( s) 3 s( s 1) f (0 ) 3s 3 0, s( s 1) s s 1 s f (0 ) 3 s2 3s s( s 1) s s 1 3. s При подстановке значения переменной s, равного бесконечности, раскрытие неопределенности производится по правилу Лопиталя, которое, применительно к данному случаю, можно сформулировать следующим образом. Если максимальная степень, в которую возводится бесконечное число в числителе, больше аналогичной в знаменателе, то все выражение стремится к бесконечности (не забывать про знак!), если меньше, то стремится к нулю. Если максимальные степени бесконечных чисел в числителе и знаменателе дроби равны, то все выражение равно отношению коэффициентов при бесконечных величинах. - Конечное значение оригинала (при t = ∞), также вычисляется с использованием знака равенства, а не соответствия lim x(t ) lim s X ( S ) . t s 0 Пример: F ( s ) 3 3s 3 ; f ( ) 3. s( s 1) s( s 1) s 0 s 1 s 0 Прямое X ( s ) x(t )e st dt 0 и обратное j 1 x(t ) X ( s )e st ds 2j j преобразования Лапласа являются интегральными, т.е. достаточно сложными для вычисления. Однако, учитывая ограниченное количество используемых функций, в инженерной практике используют вместо них готовые таблицы соответствия оригиналов и изображений (таблица 1). 21 Таблица 1 Изображение X(s) k 1 k – простой нулевой корень s n! – кратный k n 1 нулевой корень s 1 – простой k s действительный корень k – кратный n действительный корень (s ) Оригинал x(t) импульсная функция k∙δ(t) скачок k∙1(t) или просто k k∙tn – степенной ряд от t k e t – экспонента t n1 t k e , при n > 1 (n 1)! k – сопряженные k∙sinωt – гармоническая 2 2 мнимые корни функция s ks – сопряженные k∙cosωt – гармоническая 2 2 мнимые корни функция s сопряженные комплексные корни а) предпочтительная форма j , объединенные в одну et C cos t E sin t дробь б) через синус Cs D C t 2 2 e C E sin t arctg , E (s )2 2 в) через косинус D C E t 2 2 с вычислением E e C E cos t arctg C 2 e t c cos t d sin t сопряженные комплексные корни перед d ставят плюс, если знаки (раздельное представление) мнимых частей изображения в c jd c jd числителе и знаменателе сов s j s j падают (как показано), и минус в противном случае Примечание – Даже если скачок 1(t) в формуле для входной функции не пишется, то всегда подразумевается, т.к. по Лапласу при t = 0- любая функция f(t) равна нулю, а затем она появляется скачком. Однако сомножитель 1/s вводят в изображение входной функции лишь в том случае, если она представляет собой чисто ступенчатое воздействие, даже если в функциях-оригиналах другого вида скачок и был указан. 22 1.5 Передаточная функция Операторная передаточная функция W(s) является основной формой описания систем в операторной области по методу один вход, один выход. Она может быть получена: - по структурной схеме (методы эквивалентных преобразований были рассмотрены нами ранее); - по дифференциальному уравнению – заменяя операцию дифференцирования переменной s, функции времени их изображениями по Лапласу и считая начальные условия нулевыми, получаем из ОДУ (a0 sn + a1 sn-1 + ... + an ) Y(s) = (b0 sm + b1 sm-1 + ... + bm ) X(s), Y ( s ) b0 s m b1 s m1 ... bm N ( s ) W ( s) . X ( s ) a0 s n a1 s n1 ... an D( s ) Отношение изображений по Лапласу выходной величины к входной при нулевых начальных условиях называется передаточной функцией. Для реальных систем m ≤ n, поэтому передаточная функция обычно представляет собой правильную рациональную дробь. Корни характеристического уравнения D(s) = a0 sn + a1 sn-1 + ... + an = 0 характеризуют собственные свойства системы и дают решение однородного дифференциального уравнения без правой части, т. е. описывают свободное движение автономной системы. Функция 1/D(s) называется системной, функция N(s) – возбуждающей. С точностью до коэффициента b0/a0 ПФ может быть выражена корнями полинома числителя (нулями) и полинома знаменателя (полюсами) b ( s z1 )( s z 2 )...( s z m ) W ( s) 0 . a0 ( s p1 )( s p2 )...( s pn ) На комплексной плоскости нули обозначают кружком, а полюса – крестиком. Поскольку и числитель, и знаменатель представляют собой алгебраические многочлены с действительными коэффициентами, комплексные корни могут быть только сопряженными, т.е. образовывать пары с положительной и отрицательной мнимыми частями. Число корней равно степени многочлена. 23 Как правило, ПФ приводят к стандартному виду (нормируют), приравнивая к единице старший коэффициент при s, либо свободный член полиномов. Нормирование по старшему коэффициенту вида b b1 m1 s ... m b b0 b0 ~ N (s) W (s) 0 K a a 0 n a 1 n 1 D( s) s s ... n a0 a0 sm обычно применяется при работе с корнями или при переходе к описанию системы в пространстве состояний. Нормирование по свободному члену b0 m b1 m1 s s ... 1 bm bm N ( s) bm W ( s) k an a0 s n a1 s n1 ... 1 D( s ) an an используется при работе с типовыми динамическими звеньями. Число перед дробью (общий множитель) называется коэффициентом передачи в общем случае и коэффициентом усиления (Gain), если параметры входа/выхода безразмерны или имеют одинаковую раз~ мерность. K и k в общем случае не равны. Коэффициент k = bm/an, обозначаемый также kуст или k(∞), называется коэффициентом усиления системы в установившемся режиме. Из W(s) = Y(s)/X(s) следует Y(s) = X(s)∙W(s). Иначе говоря, изображение реакции системы на любое воздействие, имеющее изображение по Лапласу, может быть определено как произведение последнего на передаточную функцию системы. Вид W(s) и W(p) схож лишь при нулевых начальных условиях и только для стационарных систем. Если звено (система) является стационарным, т.е. описывается ОДУ с постоянными коэффициентами, то имеет место сходство между передаточными функциями в форме изображения Лапласа W(s) и в операторной форме W(p). Чтобы перейти от одной формы к другой, достаточно сделать подстановку p = s и наоборот. Однако для нестационарных звеньев эта операция не допускается, для них возможна только форма W(p, t). При ненулевых начальных условиях отличается функция W(s, x0), в которой появляются элементы учета начальных значений переменных при t = 0, которых нет в W(p). 24 1.6 Решение уравнений движения системы Для решения дифференциального уравнения с помощью преобразования Лапласа необходимо: - найти корни характеристического уравнения D( s ) a0 s n ... an 0 ; - найти изображение реакции Y(s) и записать его в виде суммы простых дробей по теореме разложения в соответствии с полюсами; - найти коэффициенты числителей каждой дроби (вычеты в полюсах); - найти оригинал для каждой дроби по таблице соответствия и записать конечное решение в виде суммы отдельных оригиналов. При этом целесообразно учитывать следующие рекомендации: а) перед вычислением корней знаменатель обязательно следует нормировать по старшему коэффициенту при s, иначе может возникнуть типичная ошибка (в примере потерян коэффициент 0,5 при s2, на самом деле после преобразования должно быть 10/(s+1)/(s+2)) 5 5 ! 0,5 s 2 1,5 s 1 ( s 1)( s 2) б) нельзя сокращать существующие нули и полюсы с положительной действительной частью, ведущие к неустойчивости системы, если их части не являются целыми числами; остальные нули и полюса могут быть сокращены перед переходом во временную область; в) для кратных полюсов записывают дробями все степени корня от наибольшей до первой в порядке их убывания; г) комплексные сопряженные корни записывают, как правило, в виде одной общей дроби. После разложения на простые дроби и вычисления вычетов полезно проверить правильность результата. Первое правило проверки – сумма дробей правой части должна быть равна изображению в левой части равенства. Второе правило проверки – сумма всех составляющих оригинала при t = 0 (начальное значение оригинала) в соответствии со свойствами преобразования Лапласа должна быть равна lim Y ( s ) s . s В общем случае реакция системы состоит из вынужденной и свободной составляющих y(t)=yвын(t)+yсв(t), изображения которых имеют одинаковый знаменатель (характеристический полином системы) N ( s) N ( s) Y ( s) Yâûí ( s) Yñâ( s) U ( s) 0 . D( s ) D( s ) 25 Вынужденная составляющая yвын(t) является реакцией системы на входное воздействие при нулевых начальных условиях y(0_) = 0. Свободная составляющая yсв(t) или переходный процесс автономной системы является решением однородного дифференциального уравнения (без правой части) и определяется начальными условиями. Используют два способа вычисления совокупного переходного процесса. В первом случае система обычно задается ОДУ, производят индивидуальное преобразование каждого члена дифференциального уравнения, вычисляются одновременно вынужденная и свободная составляющие. По второму способу выполняют независимое вычисление вынужденной и/или свободной составляющих, при этом система обычно задана ПФ или структурной схемой. Для вычисления N0(s) по D(s) используется формула (схожая, но не равная вычислению производной) N 0 ( s ) y (0) [a0 s n 1 a1s n 2 ... an 2 s an 1 ] y(0) [a0 s n 2 a1s n 3 ... an 2 ] ... y ( n 1) (0) [a0 ] Если рассчитывается полное движение системы с учетом ненулевых начальных условий, запрещается производить сокращения в левой части ОДУ (в характеристическом полиноме D(s) системы). Обусловлено это требование тем, что именно вид характеристического полинома определяет свободную составляющую переходного процесса, т.е. реакцию на начальные условия. Если начальные условия не заданы, то по умолчанию они считаются нулевыми. Пример: для системы, заданной однородным дифференциальным уравнением y 3 y 2 y 0 , найти реакцию на начальные условия y(0) 2 ; y (0 ) 3 (начальные значения должны задаваться до n-1 производной выходной величины). Преобразуем индивидуально каждый член ОДУ по Лапласу с учетом свойств дифференцирования оригинала при ненулевых начальных условиях s 2Y ( s ) s y (0) y (0) 3sY ( s ) 3 y (0) 2Y ( s) 0 . Группируем и переносим подобные члены, подставляем значения ( s 2 3s 2)Y ( s ) sy (0) 3 y (0) y (0) , Yñâ ( s) sy (0) 3 y (0) y (0) 2s 3 . s 2 3s 2 s 2 3s 2 26 Находим корни характеристического уравнения s1 = -1, s2 = -2 по формуле D(s) s 2 3s 2 0; s1, 2 b b 2 4ac 3 9 8 ; 2a 2 записываем разложение на простые дроби, вычисляем вычеты в полюсах (смотри приложение А), переходим к оригиналу по таблице 1 2s 3 1 1 , ( s 1)( s 2) s 1 s 2 yñâ (t ) e t e 2t . d 2 y(t ) dy(t ) 2 y(t ) 4u (t ) . Найти dt dt 2 реакцию системы, если u(t) = δ(t), y(0) = 1, y (0 ) 1 . Пример. Система задана ОДУ Прежде всего находим изображение входного воздействия по Лапласу U ( s) L{ (t )} 1 из таблицы 1. Вычисляем передаточную функцию и вынужденную составляющую переходного процесса 4 4 , s 2 2 s 1 ( s 1) 2 4 ( s) 1 yâûí (t ) 4te t . 2 ( s 1) W ( s) Yâûí Определяем по характеристическому полиному числитель N0(s) и свободную составляющую переходного процесса N 0 ( s) y (0)[1s 2] y (0)[1] s 2 1 s 1 , Yñâ ( s) N 0 ( s) s 1 1 yñâ (t ) e t . 2 D( s) ( s 1) s 1 Полное описание переходного процесса y (t ) yâûí (t ) yñâ (t ) 4te t e t (1 4t )e t . 1.7 Разомкнутая и замкнутая системы Обратная связь (ОС), охватывающая всю систему, называется главной, остальные – местными (вспомогательными). Главная ОС обеспечивает контроль результатов регулирования, местные изменяют свойства системы в целом или ее отдельных элементов (регулятора). Система, имеющая главную ОС, называется замкнутой (рисунок 5, а), не имеющая – разомкнутой. ОС, не создающая задержку или 27 опережение сигнала во времени, называется жесткой (ЖОС), создающая их – гибкой (ГОС). ГОС проявляется только в переходном режиме и характеризуется присутствием s в передаточной функции ОС. Наличие в числителе s обеспечивает обратную связь по скорости изменения выходной величины, наличие s2 – по ускорению. Обратная связь может создаваться специально или образовываться непроизвольно (например, паразитная связь через емкость монтажа, через акустическую колонку и микрофон, обращенные друг к другу). а б Рисунок 5 Структурные схемы СУ обычно приводят к одноконтурному виду, собирая отдельные элементы в укрупненные блоки: регулятор, объект регулирования и датчик в цепи обратной связи. Если датчик (элемент, преобразующий выходную величину в стандартный сигнал, пригодный для сравнения с заданием) включен в состав регулятора (рисунок 5, б) или объекта, система охватывается единичной ОС, при этом передаточная функция, обратная ПФ датчика, включается в состав задающего устройства. Величины ε(t) (ошибка регулирования) и δ(t) (отклонение регулируемой величины от заданного значения) численно абсолютно идентичны, но отличаются по смыслу. Обозначение ε употребляют при изменяющемся во времени задании r = f(t), обозначение δ – если задание является постоянной величиной r = const. Передаточная функция замкнутой системы для выходной величины по управляющему воздействию (это главная ПФ системы) Wyr ( s ) W p ( s )Wo ( s ) 1 W p ( s )Wo ( s )Wä ( s ) W p ( s )Wo ( s ) 1 W paç ( s ) . Для главной ПФ системы допускается не указывать индексы. Иногда используют разные обозначения для передаточной функции разомкнутой W(s) и замкнутой Ф(s) системы. Разомкнутая система Wðàç (s) получается из замкнутой, если разорвать контур главной обратной связи по сумматору и соединить последовательно ПФ всех звеньев, образующих ЗКОС. Передаточная функция разомкнутой системы равна произведению ПФ звеньев по 28 ЗКОС при исключенном сумматоре, у которого в этом случае всегда подразумевается инвертирующий вход в цепи обратной связи Wðàç ( s) Wp ( s)Wo ( s)Wä ( s) . Передаточная функция замкнутой системы для выходной величины по возмущающему воздействию Wyf ( s) Wo ( s) . 1 Wpaç ( s) Передаточная функция замкнутой системы для ошибки регулирования по управляющему воздействию Wer ( s) 1 . 1 W ðàç ( s) Передаточная функция замкнутой системы для ошибки регулирования по возмущающему воздействию Wef ( s) Wo ( s)Wä ( s) . 1 W paç ( s) Знаменатель всех ПФ системы управления одинаков и равен ее характеристическому полиному (если не производилось сокращение одинаковых нулей и полюсов). В операторной форме сокращать одинаковые нули и полюса не рекомендуется. Заметим, что одинаковым знаменатель всех ПФ системы будет при записи в общем виде и после раскрытия всех скобок, сокращения подобных членов; на промежуточных же этапах вычислений вид знаменателей может отличаться. Помимо возмущений, прикладываемых обычно на входе ОУ, иногда учитывают шумы (ошибки измерения) на выходе объекта. По найденным передаточным функциям записывают общие уравнения движения замкнутой САР с учетом принципа суперпозиции: - для регулируемой величины Y ( s) Wyr ( s) R( s) Wyf ( s) F ( s) ; - для ошибки регулирования E (s) Wer ( s) R(s) Wef (s) F (s) . Если разомкнутую систему замыкают единичной отрицательной обратной связью (ООС), то для получения ПФ замкнутой системы достаточно к знаменателю ПФ разомкнутой системы добавить ее числитель, складывая коэффициенты при одинаковых степенях s. Пусть разомкнутая система имеет передаточную функцию 29 W paç ( s ) k . Ts 1 Найдем передаточную функцию замкнутой системы обычным образом, с помощью третьего правила структурных преобразований k k . Wçàì ( s) Ts 1 k Ts 1 k 1 Ts 1 Полученный результат подтверждает, что при замыкании системы единичной ООС для получения ПФ замкнутой системы достаточно было к знаменателю ПФ разомкнутой системы добавить ее числитель, т.е. в данном случае коэффициент k. 1.8 Типовые воздействия Сигналы делятся на регулярные (детерминированные) и нерегулярные (случайные). Регулярные изменяются по закону, описываемому математической функцией. Если значения сигнала определены в каждый момент времени, то сигнал называется непрерывным (аналоговым), в противном случае он называется дискретным. Регулярные сигналы, используемые для исследования СУ, называются типовыми воздействиями. Они позволяют сравнивать свойства различных систем, для чего их ставят в равные начальные условия и подают на вход сигналы одинаковой формы. К типовым обычно относятся следующие сигналы (функции). а) Ступенчатая функция (скачок) или функция Хевисайда 0, ïðè t 0 x(t ) ; A = const A, ïðè t 0 Обозначается: A∙1(t), при А = 1 называется единичным скачком, имеет изображение по Лапласу L{1(t)} = 1/s. Это наиболее часто применяемая в практических экспериментах функция. Скачок может быть как положительным, так и отрицательным, например, наброс и сброс нагрузки, возникновение и отключение короткого замыкания (КЗ) в энергосистеме. б) Импульсная функция (дельта-функция или функция Дирака) 0, при t 0 x(t ) , , при t 0 30 x(t )dt A 0 Воздействие соответствует пределу прямоугольного импульса, у которого основание стремится к нулю, высота к ∞, а площадь к А. Обозначается А∙δ(t), при А = 1 импульс называется единичным, имеет изображение по Лапласу L (t ) 1 . Это наиболее часто применяемая в теоретических экспериментах функция, реально воссоздать ее затруднительно. в) Гармоническая функция A sin( t ) A s2 2 ; x(t ) s A cos(t ) A s2 2 где 2f – это основная частота, рад/с (Тк – период собственных колебаний в секундах), при А = 1 функция называется единичной. г) Степенные (полиномиальные) функции времени t x(t ) At 0 A 1(t ) A x(t ) v t v x(t ) a 1 – воздействие с постоянной амплитудой (скачок) s 1 – воздействие с постоянной (t ) 2 скоростью (линейное) s t2 1 a 3 2 s – воздействие с постоянным ускорением (квадратичное) или в общем случае x(t ) A t n A n! s n1 . При А = 1 (ν = 1, a = 1) воз- действие называется единичным. Любую функцию времени с заданной погрешностью можно разложить на совокупность типовых воздействий с соответствующими коэффициентами веса. Тогда по принципу суперпозиции реакция на это воздействие определяется как сумма реакций на отдельные воздействия, принцип вычисления которых известен. В частности, сигнал может быть представлен набором прямоугольных ступенек (скачков), импульсов, следующих с заданным интервалом времени, в виде приближения алгебраическим полиномом или степенным рядом от t, в котором некоторые члены ряда могут быть и нулевыми x(t) = k0 + k1t + k2t2 + k3t3 … , приближения тригонометрическим полиномом или рядом Фурье 31 a0 m / 21 x(t ) Ak (sin 2f1kt k ) . 2 k 1 Смысл существования типовых воздействий заключается также в том, что они позволяют сравнивать между собой совершенно разные по принципу действия, назначению и конструктивной базе системы по виду их реакции при одинаковых воздействиях и начальных условиях. 1.9 Временные характеристики К типовым функциям времени (реакциям системы) относятся переходная и импульсная переходная (весовая) функции. Переходной функцией h(t) называется реакция системы на единичный скачок при нулевых начальных условиях. Реакция на скачок произвольной величины называется кривой разгона. Импульсной (весовой) функцией g(t) называется реакция системы на единичный импульс при нулевых начальных условиях. Установившийся режим характеризуется неизменными параметрами, например, постоянной скоростью движения. Переходным называется любой процесс перехода системы от одного установившегося режима к другому. Однако в ТАУ переходной функцией описывается лишь реакция на единичный скачок при нулевых начальных условиях. Единичный скачок получается при приведении реальной величины к некоторым номинальным (базисным) условиям. Так, при номинальном напряжении сети 220 В включение лампы с подачей напряжения будет соответствовать единичному скачку после приведения 220/220=1. Поскольку всегда Y(s)=X(s)·W(s), то 1 h(t) H(s) L{ 1(t)} W(s) W (s) , s g(t) G(s) L t W ( s) 1 W ( s) . Следовательно, импульсная функция является оригиналом передаточной функции, поэтому импульсную функцию иногда обозначают w(t). Наоборот, обозначение g является сокращением от слова Gain – усиление, и иногда передаточную функцию системы обозначают G(s). Особые значения переходной функции, по которым можно сделать проверку реакции системы без проведения сложных расчетов. 0 ïðè m n W ( s) s b0 Начальное: h(0) lim s s a ïðè m n 0 32 W ( s) s bm k óñò . s 0 s am Конечное: h() lim Таким образом, определить начальное и конечное (установившееся) значения переходной характеристики довольно просто – нужно лишь найти отношение коэффициентов при s в степени n числителя и знаменателя ПФ в первом случае, и отношение свободных членов передаточной функции во втором. Все характеристики линейной системы взаимосвязаны, т.е. имея одну из них, можно вычислить все остальные характеристики. Связь между импульсной и переходной функциями определяет dh(t ) ся соотношением G(s)=H(s)∙s , откуда g (t ) и h(t ) g (t )dt . dt 0 Иначе говоря, импульсная функция является производной от переходной функции по времени. Отсюда вытекает графоаналитический метод построения g(t) по h(t): разбивают интервал исследования на равные отрезки времени, измеряют на каждом отрезке приращение переходной функции и откладывают его как значение импульсной характеристики на этом шаге. Масштаб характеристики уточняется по фактическому значению выбранного отрезка времени (шага). 1.10 Частотные характеристики В частотной области главной формой описания систем является частотная передаточная функция W(jω) или комплексный коэффициент передачи K(jω), где ω = 2πf – круговая (угловая) частота, радиан в секунду. Частотная передаточная функция определяет изменение амплитуды и фазы реакции системы относительно гармонического воздействия в установившемся режиме. Если на вход системы подать сигнал x(t ) Aâõ sin( t âõ ) , то после окончания переходного процесса на ее выходе будет наблюдаться сигнал той же частоты ω, но, в общем случае, с другой амплитудой и фазой (рисунок 6) Рисунок 6 y (t ) Aвых sin( t вых ) . Изменяя значения частоты входного сигнала, получим иные значения амплитуды и фазы реакции системы. Отношение выходной и входной величин образуют комплексную передаточную функцию 33 W ( j ) Y ( , t ) Aâûõ ( ) sin( t âûõ ( )) A( ) e j ( ) , X ( , t ) Aâõ sin( t âõ ) откуда можно выделить две частотные характеристики, обычно получаемые при экспериментальном исследовании систем регулирования. A(ω)=Aвых(ω)/Aвх – амплитудно-частотная характеристика (АЧХ), характеризует кратность изменения модуля сигнала при прохождении через систему (четная функция). φ(ω)=φвых(ω) - φвх – фазочастотная характеристика (ФЧХ), характеризует запаздывание сигнала по фазе при прохождении через систему (нечетная функция). Как любую комплексную величину, W(jω) можно изобразить (рисунок 7) вектором на комплексной плоскости и, переходя от полярных координат к прямоугольным, выразить через его проекции – коэффициенРисунок 7 ты при действительной и мнимой частях W ( j ) A( ) e j ( ) Re W ( j ) j ImW ( j ) . P(ω) = ReW(jω) – вещественная частотная характеристика (ВЧХ), соответствует проекции вектора W(jω) на действительную ось. Q(ω) = ImW(jω) – мнимая частотная характеристика (МЧХ), соответствует проекции вектора W(jω) на мнимую ось. Обычно ВЧХ и МЧХ вычисляются в ходе теоретических построений, АЧХ и ФЧХ получаются экспериментально. Аналитические выражения для A( ) , ( ) , P( ) , Q( ) называются соответственно амплитудной, фазовой, вещественной и мнимой частотными функциями. Взаимосвязь между частотными функциями определяется известными свойствами комплексных величин: A( ) W ( j ) Re 2 ( ) Im 2 ( ) , ( ) arg W ( j ) arctg Im( ) A( ) sin ( ) . Re( ) A( ) cos ( ) , Im( ) ; Re( ) Обобщающей является амплитудно-фазовая частотная характеристика (АФЧХ или просто АФХ) – графическое изображение частотной передаточной функции W(jω) на комплексной плоскости. Кривая (годограф), которую чертит на комплексной плоскости конец вектора Aω e j ω при изменении частоты ω от 0 до +∞, называется АФЧХ. 34 При изменении ω в диапазоне от 0 до -∞ вычерчивается дополнительная кривая, подобная основной и симметричная относительно действительной оси, которая обычно не используется. Поэтому получаемые в ходе расчетов отрицательные, мнимые и комплексные частоты при построении частотных характеристик отбрасываются. Из свойств преобразования Фурье вытекает, что W(jω) можно получить по операторной передаточной функции W(s), приравняв в переменной Лапласа s = σ + jω действительную часть σ нулю. При возможности следует обязательно сократить получающиеся выражения для действительной и мнимой частей на ω. Реакцию системы на гармоническое воздействие любой частоты ω в показательной форме получают путем умножения на А(ω) амплитуды входного сигнала и добавления φ(ω) к его фазе. При построении частотных характеристик учитывают особенности, которые позволяют быстро проверить правильность расчетов: - АФЧХ и АЧХ начинаются при значении bm/an = kуст; - АФЧХ и АЧХ заканчиваются в нуле (m<n) или при b0/a0 (для m= n); - АФЧХ устойчивой системы, не имеющей нулей, проходит по часовой стрелке столько квадрантов, каков порядок характеристического полинома. Пример. Записать аналитически реакцию системы с известными АЧХ и ФЧХ (рисунок 8) на воздействие х(t) = 3,5sin(t). Рисунок 8 Входное воздействие характеризуется параметрами: амплитуда 3,5, фаза 0 градусов, частота ω = 1 рад/с, находим для этой частоты по графику A(ω) = 0,36; φ(ω) = -45°, отсюда амплитуда выходной величины 3,5·0,36 = 1,26; фаза выходной величины 0 - 45° и окончательный вид реакции y(t) = 1,26sin(t-45°). Пример: построить частотные характеристики системы W(s) = 2/(s2+5s+6). Подставляем s=jω, учитывая, что j 1 , снижаем порядок j (j2 = -1; j3 = -j и т.п.), избавляемся от мнимости в знаменателе, умножая числитель и знаменатель дроби на комплексное выражение, сопряженное стоявшему в знаменателе, отделяем действительную и мнимую части, приводим в знаменателе подобные члены. 35 W ( j ) 2 2 2 ( j ) j 5 6 6 j5 2 2 (6 2 j5 ) 12 2 2 j10 ) (6 2 j5 ) (6 2 j5 ) 36 6 2 6 2 4 25 2 12 2 2 10 . j 2 4 36 13 36 13 2 4 Составляем таблицу особых частот (таблица 2), используя обязательные значения (можно взять больше точек, но не меньше): - крайние частоты 0 и +∞; - частоты пересечения характеристик с осями (определяются путем приравнивания числителей дробей мнимой и действительной части к нулю); - частоты разрыва характеристики (приравнивая знаменатель нулю); - прочие частоты для повышения точности расчета. Приравнивая Re(ω) = 0, получаем 6 - ω2 = 0, откуда ω = 2,45. Приравнивая Im(ω) = 0, получаем 10ω = 0, откуда ω = 0. Таблица 2 ω 0 ∞ 2,45 1 3 Re(ω) 0,33 0 0 0,2 -0,03 Im(ω) 0 0 -0,16 -0,2 -0,14 A(ω) 0,3 0 0,16 0,28 0,14 φ(ω) 0 ~ -90° -45° -120° Исходя из вида биквадратного уравнения 36+13ω2+ω4=0 определяем, что частот разрыва (действительных корней) нет. Частоты 1 и 3 рад/с добавлены произвольно для более точного построения графика. При построении учитывают гладкость кривой (при разрывах годограф изменяется асимптотически), указывают на графике стрелкой направление увеличения частоты и/или крайние частоты. В каком бы порядке не были расположены частоты в таблице, построение кривой следует всегда производить по возрастанию значений частоты. По одной таблице можно построить АФЧХ на комплексной плоскости (рисунок 9, а), индивидуально ВЧХ и МЧХ (рисунок 9, б), и, пересчитав, АЧХ и ФЧХ (рисунок 9, в). а б Рисунок 9 36 в 1.11 Логарифмические частотные характеристики Логарифмические частотные характеристики (ЛЧХ) или диаграммы Боде позволяют упростить построения за счет замены реальной характеристики асимптотической; упростить расчеты за счет замены умножения коэффициентов последовательных звеньев геометрическим сложением графиков; растянуть низкочастотный диапазон исследования системы и сжать высокочастотный. Зависимость L(ω)=20lgA(ω) от lg(ω) называется логарифмической амплитудной частотной характеристикой (ЛАЧХ) или ЛАХ. Зависимость φ(ω) от lg(ω) называется логарифмической фазной частотной характеристикой (ЛФЧХ) или просто ЛФХ. Используемые единицы измерения: для ЛАЧХ L(ω) – децибелы или дБ (1 дБ = 0,1 Б), для ЛФЧХ φ(ω) – градусы, для частоты, откладываемой по оси абсцисс ω – декады (дек). Декадой называется отрезок частот, равный изменению частоты в 10 раз. Практически уже не применяется устаревшая единица измерения октава, соответствующая изменению частоты в два раза. Величина 20lgA в децибелах соответствует усилению мощности в 100 раз. Начало координат выбирают произвольно слева от минимальной частоты, расчет при ω = 0 не делают. Взаимосвязь масштабов для оси частот показана в таблице 3, при построениях удобно использовать значения частоты, кратные 10 в степени ±k, где k – целое число. Таблица 3 ω, рад/с lg(ω) 0,1 -1 0,2 0,5 -0,7 -0,3 1 0 2 0,3 5 0,7 10 1 20 1,3 50 1,7 100 2 Для упрощения действительную ЛАЧХ заменяют асимптотической, т.е. ломаной линией из прямых отрезков, имеющих стандартный наклон, кратный ±20дБ/дек. Левая (начальная) часть ЛАЧХ называется низкочастотной асимптотой. Частоты пересечения отрезков ωсi называются частотами сопряжения, они соответствуют корням ПФ. Частоты пересечения ЛАЧХ с осью абсцисс ωср называются частотой среза, они соответствуют значению lgA(ω)=0 или A(ω)=1 (усиление или ослабление сигнала на частоте среза отсутствует). Реальная ЛАЧХ расходится с асимптотической на частотах сопряжения, например, для звена с действительным корнем эта разница составляет 3 дБ. Построение ЛЧХ начинается с низкочастотной асимптоты, ее строят по двум параметрам: - степень астатизма ν = r – l (здесь r – число нулевых корней знаменателя, l – числителя); 37 - добротность К – отношение свободных членов полиномов числителя и знаменателя ПФ после выделения нулевых корней. Низкочастотную асимптоту или ее продолжение проводят через точку с координатами lgω=0 (ω = 1) и L(ω)=20lgK слева направо с наклоном ν∙(-20 дБ/дек) до первой (наименьшей) частоты сопряжения. Частоты сопряжения находят по корням (постоянным времени Т) простых дробей, на которые разбивают ПФ, или типовых звеньев, из которых состоит структурная схема системы регулирования. Звено первого порядка (один действительный корень): 1 1 1 → c или → c . T Ts 1 s Звено второго порядка (комплексные сопряженные корни): 1 1 a 1 2 2 → c , 1 a0 s a1 s 1 T s 2Ts 1 T 2 a0 2 или 1 → c 2 2 , T , 2 2 c (s ) где ξ – показатель затухания (коэффициент демпфирования), характеризует величину резонанса в звене. При ξ = 1 резонанс отсутствует, при ξ → 0 резонансный выброс h стремится к бесконечности. Чем меньше действительная часть корня α, тем ближе частота сопряжения ωс к собственной частоте колебаний звена β (мнимой части корня). При 0,38 < ξ < 0,707 расхождение между асимптотической и истинной ЛАЧХ не превышает 3 дБ, при меньших значениях ξ асимптотическую ЛАЧХ корректируют на величину выброса h. Значение h находят по приблизительной формуле h 20 lg 1 l , где l – число 2 2 одинаковых корней (кратность корня), или по типовым характеристикам (таблица 4). Таблица 4 ξ h, дБ 0,05 20 0,1 14 0,15 10 0,3 5 0,6 0 1 -5 На каждой частоте сопряжения ЛАЧХ проводят с отклонением от предыдущего направления: вверх (+20 дб/дек) для корня числителя; вниз (–20 дБ/дек) для корня знаменателя. Если кратность корня l ≠ 1, наклон асимптоты изменяется в l раз. Общий наклон ЛАЧХ в конце 38 равен (n–m)∙(–20 дБ/дек). Выбросы при комплексных корнях откладывают вверх для корней знаменателя, вниз для корней числителя, близкие выбросы суммируются графически. Для удобства построения через значения сопрягающих частот проводят вертикальные линии, а на свободном поле графика – вспомогательные линии со стандартными наклонами k(-20) дБ/дек. ЛФХ устойчивых систем строят по шаблону, неустойчивых – по вычисляемым точкам. Приближенно считают, что участку ЛАЧХ с наклоном ±20 дБ/дек соответствует фазовый сдвиг около ±90°, а участку с наклоном ±40 дБ/дек сдвиг на ±180°; действительному корню знаменателя соответствует угол наклона ЛФЧХ на сопрягающей частоте φ = -arctg(ωT)=-45°, комплексной паре φ = -arctg(ξ∙2ωT/(1- ω2T2)). Пример: построить ЛАЧХ системы, заданной структурной схемой (рисунок 10, а). Передаточная функция системы равна W(s) = 50/[s(s + 5)]. а б Рисунок 10 в Определяем параметры НЧ-асимптоты: - порядок астатизма ν = 1 – 0 = 1 (имеется один нулевой корень в знаменателе); - добротность К = 50/5 = 10; 20lgK = 20. Нули в системе отсутствуют, полюс имеется, отсюда частота сопряжения ωс = 5 рад/с; lg5 = 0,7. Строим график ЛАЧХ толстой сплошной линией, проводя слева вниз прямую линию с наклоном 1·(-20 дБ/дек) через точку с координатами (20 дБ, 0) до первой частоты сопряжения (рисунок 10, б). Поскольку частота сопряжения соответствует полюсу, отклоняемся вниз на угол -20 дБ/дек, общий наклон ЛАЧХ в конце равен -40 дБ/дек. Корень действительный – резонанса нет, выбросы не учитываем. Пример: составить ПФ системы с заданной ЛАЧХ рисунок 10, в), предполагая, что все корни имеют отрицательную действительную часть. На частотах сопряжения ωс1 и ωс4 наблюдается отклонение характеристики от предыдущего направления вверх на +20 дБ/дек, на частотах сопряжения ωс2 и ωс3 – вниз на -20 дБ/дек, поэтому передаточная функция будет иметь вид W ( s) ( s c1 )( s c 4 ) K. ( s c 2 )( s c 3 ) Поскольку 20lgK = 20 дБ, то lgK = 1, K = 10 и окончательно W ( s) ( s 0.01)( s 10) 10s 2 100.1s 1 10 2 . ( s 0.1)( s 1) s 1.1s 0.1 39 2 Устойчивость линейных систем 2.1 Условия устойчивости линейных САУ Устойчивость – это свойство системы возвращаться в исходное состояние равновесия после снятия воздействия, выведшего систему из этого состояния. Устойчивость является обязательным условием работоспособности систем регулирования, проверяемым в первую очередь при их анализе и синтезе. Исследуем для системы поверхность-шарик поведение шарика после того, как приложенное к шарику усилие x снято, т.е. начинается его свободное движение (рисунок 11). а б Рисунок 11 в а) Шарик после нескольких качаний возвращается к исходному состоянию равновесия на дне лунки, следовательно, система устойчива. Для такой системы характерен затухающий (сходящийся) процесс возвращения. б) Шарик не возвращается к исходному состоянию и продолжает уходить от него все дальше, т.е. свободное движение имеет расходящийся характер. Это неустойчивая система. в) После снятия воздействия x шарик остается в новом положении равновесия, не возвращаясь к начальному состоянию, но и не уходя дальше. Это нейтральная система. Таким образом, устойчивость определяется характером свободного движения системы. Физический признак устойчивости гласит: система устойчива, если свободная составляющая yсв(t) переходного процесса с увеличением времени стремится к нулю, неустойчива – если она стремится к бесконечности, и нейтральна, если она стремится к некоторой постоянной величине. Рисунок 11, б показывает, что в системе при некоторых условиях может существовать временное равновесие, когда система кажется 40 устойчивой. Из рисунка 11, а следует, что, если вывести шарик на край лунки, т.е. приложить достаточно большое усилие, его дальнейшее поведение становится неопределенным – система может оказаться нейтральной и даже неустойчивой. В связи с последним различают устойчивость в малом (при малых медленных отклонениях параметров) и устойчивость в большом (при резких сильных возмущениях). Далее мы исследуем системы только на устойчивость в малом. Свободный процесс можно представить в виде суммы составляющих n yñâ(t) Ci eαit . i 1 Согласно преобразованию Лапласа имеется соответствие e it 1 , s i где – это действительная часть корня характеристического уравнения системы D(s) = a0 sn + a1 sn-1 + … +an = 0. Поскольку yсв(t)0 только при стремлении всех составляющих к нулю, что имеет место лишь при отрицательных значениях α, то характер процесса зависит от корней характеристического уравнения системы следующим образом: yсв(t) затухает в случае, если действительная часть корня меньше нуля (рисунок 12). а б в г Рисунок 12 д е От действительной части корня зависят возможность и скорость затухания процесса, от мнимой части корня – наличие, частота и размах колебаний. 41 Случаям а, в и д, когда система имеет только один действительный корень, соответствует апериодический процесс, в случаях, когда корни комплексные сопряженные, процесс имеет колебательный характер. Если все корни характеристического уравнения лежат слева от мнимой оси ( < 0), система устойчива; если хотя бы один корень находится справа от мнимой оси ( > 0), система неустойчива. Система находится на апериодической границе устойчивости, если при остальных левых корнях имеет один нулевой корень, и на колебательной (периодической) границе устойчивости, если при остальных левых корнях характеристического уравнения имеет пару чисто мнимых корней (значение мнимой части таких корней равно частоте незатухающих колебаний системы на границе устойчивости). Отсюда следует, что мнимая ось является границей устойчивости системы в плоскости корней характеристического уравнения. Сформулируем математический (главный) признак устойчивости: для устойчивости линейной системы необходимо и достаточно, чтобы все корни характеристического уравнения имели отрицательную действительную часть. Другими словами – чтобы все полюса системы были левыми. Корни полинома числителя передаточной функции (нули) на устойчивость системы не влияют. Анализ всегда начинают с худшего случая – проверяют наличие хотя бы одного правого полюса, затем наличие полюсов с нулевой действительной частью, и лишь при отсутствии всех указанных корней можно сказать, что система устойчива. При оценке устойчивости по характеристическому уравнению (полиному знаменателя передаточной функции) следует проверить, что ранее не было сокращения сомножителей числителя и знаменателя. Например, несмотря на кажущееся сокращение корня +2 передаточной функции W ( s) ( s 1)( s 2) , ( s 2)( s 3)( s 4) в реальной системе он продолжает оставаться и влиять на ее устойчивость. Поскольку выходная величина устойчивой системы при t асимптотически стремится к вынужденной составляющей переходного процесса, такую устойчивость системы называют асимптотической. Нейтральная система не является асимптотически устойчивой, иногда ее называют устойчивой по Ляпунову. 42 Математиком Ляпуновым А.М. показана связь между устойчивостью нелинейной (исходной) и линеаризированной (приблизительной модели) систем в теоремах, упрощенно звучащих так: - если линеаризированная система устойчива, то устойчива и исходная нелинейная; - если линеаризированная система неустойчива, то неустойчива и исходная нелинейная; - если линеаризированная система находится вблизи или на границе устойчивости, то для оценки устойчивости исходной нелинейной системы следует провести дополнительные исследования (другим методом или с большей точностью, учитывая малые нелинейности, отброшенные при линеаризации по первому приближению). В процессе исследования систем прежде всего оценивают их устойчивость при заданных параметрах, при необходимости выполняют далее выбор параметров для обеспечения устойчивости, наконец, иногда требуется изменение структуры для обеспечения устойчивости системы, если изменением параметров она не может быть достигнута. Система, устойчивость которой не может быть достигнута при любых изменениях параметров в допустимых пределах, является структурно неустойчивой. Если корни характеристического уравнения вычислить сложно, для оценки устойчивости системы используют критерии устойчивости. Критериями или условиями устойчивости называются правила, позволяющие оценить знак действительной части корней характеристического уравнения без вычисления их значений. Алгебраические критерии устойчивости используют связь между положением на комплексной плоскости корней характеристического (алгебраического) уравнения и значениями его коэффициентов. Частотные критерии устойчивости используют связь между устойчивостью системы и формой ее частотных характеристик. 2.2 Критерий Гурвица Критерий Гурвица (Hurwitz, 1895 г.) относится к алгебраическим. Он гласит: система устойчива, если все коэффициенты ее характеристического уравнения и все диагональные миноры матрицы Гурвица больше нуля. Если все коэффициенты характеристического уравнения D(s) = a0 sn + a1 sn-1 + … +an = 0 отрицательны, то, умножив обе части уравнения на –1, делают коэффициенты положительными, поэтому такой случай и берут в качестве 43 основного. Важно, чтобы все коэффициенты имели одинаковый знак. Диагональными минорами называются определители порядка, меньшего порядка системы n, лежащие на главной диагонали матрицы. Критерий распадается на два условия: необходимое – все коэффициенты положительны, и достаточное – все диагональные миноры положительны, в таком порядке и производится проверка устойчивости системы. Если имеется хотя бы один нулевой или отрицательный коэффициент, систему сразу же нельзя признать устойчивой, однако положительность всех коэффициентов характеристического уравнения еще не дает гарантий устойчивости системы. Достаточное условие проверяют, составив матрицу Гурвица. Для этого по главной диагонали матрицы размером n n , где n – это порядок системы, выписывают последовательно коэффициенты характеристического уравнения от a1 до an. Столбцы матрицы заполняют: вверх – последующими, вниз – предшествующими коэффициентами, отсутствующие коэффициенты заменяют нулем. Существуют и другие правила составления матрицы Гурвица. Главный определитель матрицы n n1 a n , поэтому достаточно вычислить только n–1 определитель. Если n = 0, а остальные миноры положительны, то система находится на границе устойчивости: апериодической – при an = 0 (имеется один нулевой корень), периодической – при n-1 = 0 (имеется пара чисто мнимых корней). Пример: оценить по критерию Гурвица устойчивость системы с ПФ W ( s) s2 . s 2 s 2 3s 4 3 Выписываем характеристическое уравнение D(s) = s3 + 2s2 + 3s + 4 = 0, а) проверяем необходимое условие – все коэффициенты характеристического уравнения положительны, что можно кратко записать как ai > 0 – условие выполняется; б) проверяем достаточное условие, составив определитель Гурвица 1 = 2 > 0, 2 = 6 – 4 = 2 > 0. Оба минора положительны, система устойчива. Полезно знать частные случаи применения критерия Гурвица: - система первого порядка: D(s) = a0s + a1 = 0 – вычисления определителей не требуется; - система второго порядка: D(s) = a0s2 + a1s + a2 = 0 – вычисляется только 1 = a1, что соответствует необходимому условию. 44 Отсюда следует, что для устойчивости систем первого и второго порядка необходимо и достаточно, чтобы все коэффициенты характеристического уравнения были положительны (одного знака); - система третьего порядка: D(s) = a0s3 + a1s2 + a2s + a3 = 0 – вычисляются два минора 1 = a1 и 2 = a1a2 - a0a3, т.е. для устойчивости системы третьего порядка необходимо и достаточно, чтобы при положительности всех коэффициентов характеристического уравнения произведение средних коэффициентов уравнения было больше произведения крайних. Для устойчивости системы четвертого порядка при положительности коэффициентов характеристического уравнения должно выполняться 3 = a32 – a12a4 = a3·(a1a2 - a0a3) – a12a4 > 0, причем предыдущее условие 2 = a1a2 - a0a3 > 0 вытекает автоматически из требования a3 > 0. Обычно критерий Гурвица используют для систем не выше четвертого порядка. Анализ всегда начинают с худшего случая i < 0 и с самого старшего минора, затем ищут i = 0 и т.д. Алгебраический полином, удовлетворяющий условиям устойчивости по Гурвицу, называют полиномом Гурвица. 2.3 Критерий Рауса Критерий Рауса (Routh, 1877 г.) также относится к группе алгебраических критериев. Система устойчива, если все коэффициенты ее характеристического уравнения и все элементы первого столбца таблицы Рауса больше нуля. Заметим, что, если по критерию Гурвица строят матрицу (точнее, определитель n-го порядка), то для применения критерия Рауса строят таблицу, т.е. оформление расчетного массива отличается. Необходимое условие устойчивости (положительность всех коэффициентов) проверяют аналогично критерию Гурвица. Для проверки достаточного условия составляют таблицу, первую и вторую строки которой заполняют попарно коэффициентами характеристического уравнения, начиная со старшего, недостающий коэффициент заменяют нулем. Элементы последующих строк вычисляют по формулам ci, j = ci-2, j+1 – ci-1, j+1ri ; ri = ci-2, 1 / ci-1, 1, где i – номер строки, j – номер столбца. Таблица содержит n+1 строку. Число правых корней характеристического уравнения равно числу перемен знака элементов первого столбца таблицы. При положительности остальных элементов первого столбца система находится 45 на апериодической границе устойчивости, если равен нулю последний элемент столбца, и на периодической границе устойчивости, если равен нулю какой-либо иной элемент первого столбца. Появление нулевых строк в середине таблицы, что соответствует попарно кратным комплексным корням, приводит к неправильному заключению об устойчивости системы. В этом случае рекомендуется элементы строк со всеми нулевыми коэффициентами (это не касается двух последних строк таблицы) заменить коэффициентами производной от полинома вышестоящей строки. При делении числа на ноль образуется бесконечное число, для которого обязательно следует учитывать знак; считают также, что произведение бесконечности на ноль дает в результате ноль. Пример: оценить по Раусу устойчивость системы с характеристическим уравнением D(s) = s5 + 2s4 + 3s3 + 4s2 + 5s + 6 = 0. Необходимое условие ai > 0 выполняется. Проверяем достаточное условие – состав1 3 5 ляем таблицу Рауса: число строк равно числу ко2 4 6 эффициентов (шесть), число столбцов n/2 с окr3 = 0,5 1 2 0 руглением в большую сторону (три). Заполняем r4 = 2,0 0 6 0 две первые строки попарно коэффициентами с r5 = +∞ -∞ 0 0 четными a0, a2, a4 и нечетными a1, a3, a5 индек6 0 0 сами. Нули попарно опускаются и сдвигаются из последнего столбца в левую часть таблицы. Последний коэффициент an = a5 = 6 перемещается вниз и влево ходом шахматного коня (три клетки вниз и одна влево). Вычисляем вспомогательное число и элементы третьей строки: r3 = a0/a1 = 1/2 = 0,5; отсюда с31 = 3 - 4·0,5 = 1; с32 = 5 - 6·0,5 = 2. Остальные элементы таблицы вычисляются аналогично. Сначала должно проверяться присутствие в первом столбце таблицы отрицательных элементов, затем нулевых, при отсутствии и тех, и других система устойчива. В первом столбце имеется отрицательное число, следовательно, система неустойчива. Число перемен знака в первом столбце равно двум (от 1 к - и от - к 6), поэтому число правых корней характеристического уравнения равно двум. (Напомним, что общее количество корней алгебраического полинома равно его степени). Пример: оценить по Раусу устойчивость системы с характеристическим уравнением D(s) = s3 + 3s2 + s + 3 = 0. Необходимое условие ai > 0 выполняется. 1 1 Достаточное условие – составляем таблицу Рауса. 3 3 Система находится на колебательной границе устойчивости, 0 0 т.к. при положительности остальных элементов в первом 3 0 столбце таблицы имеется нуль не в последней строке. Пример: оценить по Раусу устойчивость системы с характеристическим уравнением D(s) = s5 + s4 + 6s3 + 6s2 + 25s + 25 = 0 (корни уравнения равны 1j2; -1j2; -1, т.е. имеются правые сопряженные комплексные корни, парные левым аналогичным корням, откуда заранее известно, что система неустойчива). Необходимое условие ai > 0 выполняется. 46 Для проверки достаточного условия составля1 6 25 ем таблицу Рауса. Нулевая третья строка в середине 1 6 25 таблицы говорит о специальном случае – наличии со0 0 0 пряженных пар комплексных корней, следовательно, 6 25 0 заключение о нахождении системы на периодической 0 0 0 границе устойчивости будет неверным. 25 0 0 Пересчитываем таблицу, записывая в третью строку коэффициенты производной от полинома в предыдущей, второй строке, 1,0 1,0 4,0 3,0 -21,3 25,0 6,0 6,0 12,0 25,0 0 0 25,0 25,0 0 0 0 0 d ( s 4 6 s 2 25 ) ds 4 s 3 2 6 s 0 , равные 4, 12 и 0, и вычисляя затем элементы нижестоящих строк как обычно. После пересчета таблица позволяет получить правильный результат – система неустойчива, имеет два правых корня характеристического уравнения. Критерий Рауса обычно применяют для систем четвертого порядка и выше. Если критерий Гурвица в основном используют при ручном счете, то алгоритм Рауса эффективен для программирования рекуррентных вычислений на ЭВМ при оценке устойчивости систем высокого порядка. 2.4 Критический коэффициент усиления Критическим или предельным называется значение параметра (коэффициента), входящего в характеристическое уравнение, при котором система находится на границе устойчивости. При проектировании обычно вначале имеется разомкнутая система (готовый набор элементов), который затем дополняют необходимыми датчиками, замыкая систему отрицательной обратной связью. В качестве примера найдем критическое значение коэффициента усиления kкр разомкнутой системы (рисунок 13), если требуется обеспечить устойчивость системы после замыкания (Т – это постоянная времени). Передаточная функция разомкнутой системы равна W ðàç ( s) Рисунок 13 k T1T2 s 3 (T1 T2 ) s 2 s . Разомкнутая система находится на апериодической границе устойчивости (свободный член характеристического полинома a3 = 0), значение коэффициента усиления k не влияет на устойчивость системы, т.к. он находится в числителе передаточной функции. Используем аналитический способ замыкания системы единичной ООС – добавим к знаменателю передаточной функции ее числитель, получим 47 W ( s) k . T1T2 s (T1 T2 ) s 2 s k 3 Теперь характеристическое уравнение замкнутой системы уже содержит коэффициент k D(s) = T1T2 s3 + (T1 + T2)s2 + s + k = 0. Сформулируем условия нахождения системы на границе устойчивости по критерию Гурвица (он наиболее удобен и нагляден для систем первого-третьего порядка): - на апериодической границе an = 0, откуда an = k = 0; kкр1 = 0; - на периодической границе n-1 = (T1 + T2)1 – T1T2k = 0, откуда получаем kкр2 = (T1 + T2)/(T1T2). Таким образом, учитывая опущенные знаки неравенств, система устойчива при значениях 0 < k < (T1+T2)/T1T2. Множество значений коэффициента (параметра), обеспечивающих устойчивость системы, может лежать между критическими значениями, слева или справа от всех них, либо не существовать вообще. Если исследуемый параметр попадает не только в свободный член, но и в другие коэффициенты характеристического уравнения, для определения критических значений следует дополнительно использовать необходимое условие устойчивости ai > 0. Методы, позволяющие найти отрезок (область) значений параметра, удовлетворяющих условиям устойчивости системы, обычно применяют при проектировании (синтезе) систем. 2.5 Критерий Михайлова (1938 г.) Критерий относится к группе частотных. Он основан на исследовании характеристической функции D(jω) = U(ω) + jV(ω), полученной из характеристического многочлена подстановкой s = jω, и также предполагает положительность его коэффициентов, как необходимое условие устойчивости. Критерий имеет несколько формулировок. Приведем вначале формулировку, использующую принцип аргумента, известный в теории комплексной переменной. Линейная система n-го порядка устойчива, если при изменении частоты от нуля до плюс бесконечности характеристический вектор системы D(j) повернется против часовой стрелки на угол n/2, не обращаясь нигде в ноль. Конец вектора D(j) при изменении частоты чертит годограф Михайлова или характеристическую кривую. На этом основана другая формулировка критерия, чаще используемая в инженерной практике. 48 Система n-го порядка устойчива, если кривая Михайлова, начинаясь при =0 на действительной положительной полуоси, проходит при изменении частоты от нуля до плюс бесконечности последовательно против часовой стрелки n квадрантов комплексной плоскости. На рисунке 14, а показана кривая Михайлова неустойчивой системы, у которой нарушена последовательность обхода квадрантов комплексной плоскости. Система находится на апериодической границе устойчивости (рисунок 14, б), если кривая при = 0 начинается в начале координат, и на периодической границе устойчивости, если кривая при 0 проходит через начало координат. Заметим, что обозначения осей U(ω) и V(ω) обычно используются при построении частотных характеристик на комплексной плоскости не по всей передаточной функции, а лишь по ее знаменателю. jV() n=3 устойчива x U() y неустойчива а n=3 jV() апериодическая n=5 граница D(j) U() jV() U() колебательная граница б Рисунок 14 в Число правых корней характеристического уравнения можно определить по формуле m n / 2 arg D( j ) / , где arg D( j ) – это полное приращение аргумента характеристической функции (суммарный угол поворота). Вектор D(jω) системы пятого порядка (рисунок 14, в) сначала поворачивается на угол 3·(π/2) или три квадранта против часовой стрелки, затем возвращается на угол 2·(π/2) или два квадранта по часовой стрелке, что в итоге соответствует полному приращению arg D( j ) = π/2. Отсюда число правых корней m равно 5/2–1/2=2 (числу неправильных пересечений кривой осей координат). Характеристическая кривая всегда начинается в точке на действительной оси, удаленной от начала координат на величину an. Поэтому, если k входит только в свободный член an уравнения D(s) = 0, то критические значения kкр определяются из графика при нулевом значении мнимой координаты V() = 0: апериодическая граница по условию an = 0, периодическая граница по an = |x| + y (рисунок 14, а). Кривая Михайлова представляет собой уходящую в бесконечность развертывающуюся спираль, у которой при высоком порядке 49 уравнения практически не видно начальную часть, вследствие этого ее чертят обычно не в точном масштабе, а лишь фиксируя последовательность и места пересечения с осями. Действительная часть U ( ) an an2 2 an4 4 ... содержит только четные степени переменной ω и называется четной функцией, мнимая часть V ( ) an 1 an 3 3 ... содержит только нечетные степени переменной ω и называется нечетной функцией. Пример: оценить устойчивость по критерию Михайлова системы, заданной ПФ W ( s) s2 . s 2 s 2 3s 4 3 Выписываем характеристическое уравнение D(s) = s3 + 2s2 + 3s + 4 = 0. Производим замену s = j, снижаем порядок j и группируем D(j) = ( j)3 + 2( j)2 + 3j + 4 = 4 - 22 + j(3 – 2). Здесь 4 - 22 – это четная (действительная) функция U(), а (3 – 2) – это нечетная (мнимая) функция V(). Приравнивая поочередно четную и нечетную Таблица частот функции нулю, находим частоты 1,41 и 1,73, соотU() V() ветствующие пересечению кривой с осями коорди нат, подставляем эти частоты в характеристическую 0 4 0 функцию и заполняем таблицу. Строим график – - - начинаясь на действительной положительной полу0 1,41 2 =1,41 оси при ω = 0, он проходит последовательно против -2 0 часовой стрелки n = 3 квадрантов комплексной 3 =1,73 плоскости, уходя в бесконечность при ω = ∞. Система устойчива (рисунок 15, а). Она будет находиться на апериодической границе устойчивости при an = 0 и на периодической границе устойчивости при an = 2 + 4 = 6. 1.41 jV() n=3 U() -2 4 4 U(),V() 1.41 0 -2 а 1.41 V() n=3 U() 1.73 б Рисунок 15 Существует еще одна формулировка критерия Михайлова, основанная на анализе графиков четной и нечетной функций. Она носит название следствия или второй формы критерия Михайлова. 50 Система устойчива, если четная U() и нечетная V() функции при изменении частоты от нуля до плюс бесконечности обращаются в нуль поочередно, начиная с нечетной функции, т.е. их корни перемежаются. Это вытекает из условия последовательного прохождения квадрантов. Для построения графика (рисунок 15, б) используется та же таблица частот, что и в первой форме. Очевидно, что при нарушении очередности пересечения функциями оси абсцисс (частот) система неустойчива (рисунок 16, а). Система находится на апериодической границе устойчивости (рисунок 16, б), если обе функции начинаются в начале координат, и на периодической границе устойчивости (рисунок 16, в), если при кривые пересекают ось частот в одной точке. В остальном диапазоне изменения функций условия устойчивости при этом не должны нарушаться. Частота , при которой система находится на периодической границе устойчивости, равна частоте незатухающих колебаний. а б в г Рисунок 16 На графике с кривой Михайлова обязательно должен указываться порядок системы n, так как при его отсутствии может быть сделан ошибочный вывод. Например, приводимый график (рисунок 16, г) для системы первого порядка говорил бы о ее устойчивости, но на самом деле принадлежит неустойчивой системе пятого порядка с уже известным нам характеристическим уравнением D(s) = s5 + s4 + 6s3 + 6s2 + 25s + 25 = 0. 2.6 Метод D-разбиения Метод используется при синтезе систем для определения допустимых по условиям устойчивости пределов изменения некоторых параметров системы – обычно коэффициента усиления k или постоянной времени T регулятора. Процесс построения в пространстве параметров системы областей с разным числом правых корней характеристического уравнения называется D-разбиением. Областью устойчивости D(0) называют область в пространстве изменяемых параметров, каждой точке которой соответствуют только левые корни характеристического уравнения. Остальные D-области 51 отличаются числом правых корней характеристического уравнения и обозначаются соответственно D(1) – область с одним правым полюсом, D(2) – с двумя и т.д. Граница любой D-области является отображением мнимой оси плоскости корней, она соответствует совокупности значений параметров, при которых хотя бы один корень характеристического уравнения системы находится на мнимой оси. Если система в пространстве всех своих параметров не имеет области устойчивости, она является структурно неустойчивой. На практике используют D-разбиение по одному параметру (результатом является отрезок на условной плоскости) и по двум параметрам (результатом является плоскость). Рассмотрим порядок D-разбиения по одному параметру. Построения производят, изменяя значения одного параметра при постоянстве остальных. Чтобы получить плоскость, вещественный параметр искусственно делают двумерным, заменяя s = j с образованием мнимой оси, однако окончательным результатом является отрезок на действительной оси. Подставив s = j в характеристическое уравнение системы, разрешают его относительно изменяемого параметра, находят четную (действительную) U() и нечетную (мнимую) V() функции. Изменяя частоту от 0 до плюс бесконечности, строят кривую D-разбиения и ее зеркальное отображение относительно действительной оси. Двигаясь по кривой от точки = - до точки = + , наносят штриховку слева от кривой. (Напомним, что кривая D-разбиения является отображением мнимой оси, а при движении по этой оси от -j к +j область устойчивости на плоскости корней располагается слева). Направление штриховки указывает на область с наибольшим числом левых корней. При каждом переходе через кривую навстречу штриховке один корень характеристического уравнения становится правым, в обратном направлении – левым. Выбранную область-претендент D(0) проверяют на устойчивость с помощью любого критерия, подставив значение параметра из этой области в характеристическое уравнение. Поскольку изменяемый параметр является действительной величиной, его допустимые значения лежат на отрезке действительной оси, заключенном внутри области устойчивости D(0). Пример: найти методом D-разбиения критические значения коэффициента усиления k системы, заданной передаточной функцией W ( s) k . 0,002s 0,12s 2 s k 3 52 Разрешаем характеристическое уравнение системы D(s) = 0,002s3 + 0,12s2 + s + k = 0 относительно исследуемого параметра k k = –0,002s3 – 0,12s2 – s, производим замену s = j k(j) = –( j)30,002 –( j)20,12 – j, снижаем порядок j и группируем k(j) =0,122 – j(1 – 0,0022). Таблица частот Определяем частоты пересечения основной U() V() кривой с осями: 0 0 0 U() = 0,122 = 0, отсюда = 0, 60,00 0 500 V() = 1 – 0,0022 = 0 и = 500 = 22,36. 1 0,12 -1 Строим основную и зеркальную кривые на комплексной плоскости, указывая направление возрастания частоты стрелкой на характеристике (рисунок 17). Наносим штриховку, обозначаем области с предполагаемым числом правых полюсов в скобках. Проверяем область-претендент D(0) на устойчивость по критерию Гурвица при значении k = 1, выбранном на отрезке внутри области D(0) между точками 0 и 60 D(s) = 0,002s3 + 0,12s2 + s + 1 = 0. Рисунок 17 Так как и необходимое, и достаточное условия устойчивости по Гурвицу при k = 1 выполняются, то система будет устойчивой при любых значениях коэффициента усиления в интервале 0 < k < 60. Критические значения коэффициента равны kкр1 = 0; kкр2 = 60. D-разбиение по двум параметрам достаточно просто выполняется на ЭВМ. Для этого задают пределы и шаг изменения для каждого параметра, подставляют очередные значения изменяемых параметров в характеристическое уравнение и оценивают устойчивость в данной точке пространства изменяемых параметров посредством любого известного критерия. По критерию Рауса определяется и число правых корней, которое можно отображать на графике цифрой или цветом. 2.7 Критерий Найквиста (Nyquist, 1932 г.) Графоаналитический критерий Найквиста относится к частотным и основан на анализе вида АФЧХ системы регулирования. 53 Критерии Гурвица, Рауса и Михайлова дают оценку устойчивости именно той системы (замкнутой или разомкнутой), характеристическое уравнение которой анализируется. По сравнению с ними критерий Найквиста имеет следующие особенности: - по характеристикам разомкнутой системы судят об устойчивости системы после ее замыкания; - для анализа используют передаточную функцию целиком, а не только ее знаменатель; - для анализа можно использовать не расчетную, а экспериментально полученную АФЧХ разомкнутой системы; - можно исследовать по имеющимся АФЧХ системы с запаздыванием. Обычная формулировка критерия (рисунок 18): Система, устойчивая в разомкнутом состоянии или нейтральная, будет устойчивой в замкнутом состоянии, если ее АФЧХ при изменении частоты от нуля до плюс бесконечности не охватывает точку с координатами (-1, j0). а б Рисунок 18 Говоря про замыкание системы, подразумевают ее замыкание единичной ООС. АФЧХ называют также годографом Найквиста или годографом комплексного коэффициента передачи W(j). Отрицательные, мнимые или комплексные частоты, получающиеся в результате расчетов, при построении АФЧХ отбрасывают, и ветвь годографа Найквиста для диапазона частот от 0 до -∞ обычно не строят. Годограф нейтральной в разомкнутом состоянии системы с ПФ вида W(s) = W0(s)/s дополняется дугой (-/2) бесконечного радиуса, начинающейся на положительной действительной полуоси. Здесь – степень астатизма системы (число нулевых корней в знаменателе передаточной функции), если , то годограф Найквиста при = 0 начинается в бесконечности (рисунок 18, б). Замкнутая система находится на апериодической границе устойчивости, если при = 0 годограф Найквиста начинается в точке (-1, j0), и на периодической границе устойчивости, если при 0 годограф проходит через точку (-1, j0). 54 Особая роль точки (-1, j0) заключается в том, что она: а) указывает на превращение ООС в ПОС, т.е. соответствует моменту изменения знака фазы сигнала в цепи обратной связи, переходу отставания в опережение по фазе; б) является границей между режимами усиления (k > 1) и ослабления (k < 1) сигнала. Считая Dзам(s) = 1 + Wраз(s) = 0, получаем критическое значение Wраз(s) = -1. Универсальная (общая) формулировка критерия Найквиста учитывает и случаи, когда разомкнутая система неустойчива. Замкнутая система устойчива, если сумма переходов АФЧХ разомкнутой системы отрезка ]-, -1[ при увеличении частоты от нуля до плюс бесконечности равна p/2, где p – число правых корней характеристического уравнения разомкнутой системы. Иначе говоря, система будет устойчивой после замыкания, если АФЧХ охватывает точку (-1,j0) против часовой стрелки на угол p∙π. АФЧХ, имеющую несколько пересечений с отрезком ]-, -1[, называют АФЧХ II-го рода (рисунок 19) в отличие от простой АФЧХ I-го рода. Переход на интервале -∞ < Re(ω) < -1 сверху вниз считают положительным, Рисунок 19 снизу вверх – отрицательным. Если АФЧХ начинается или заканчивается на критическом отрезке ]-, -1[, исключая точки -∞ и -1, то считают, что АФЧХ совершает ½ перехода. При единственном правом полюсе замкнутая система устойчива, если АФЧХ разомкнутой системы начинается на критическом отрезке и уходит вниз, совершая ½ положительного перехода. Особые случаи применения критерия Найквиста: - при наличии чисто мнимых корней в характеристическом уравнении разомкнутой системы, когда ее АФЧХ имеет разрывы непрерывности (рисунок 20), она дополняется для анализа дугами бесконечного радиуса в соответствии с начальным направлением обхода; а) система устойчива б) система неустойчива Рисунок 20 55 - правило штриховки – для АФЧХ сложной формы рекомендуется нанести штриховку справа, если двигаться по кривой от = 0 до = , и замкнуть кривую в соответствии с начальным направлением обхода (по или против часовой стрелки относительно начала координат). Замкнутая система устойчива, если точка (-1, j0) не попадает в заштрихованную область (рисунок 21). а) неустойчива б) устойчива Рисунок 21 в) неустойчива Для систем с отсутствием нулей, т.е. передаточной функцией вида W(s) = k/D(s), проще строить не прямую, а обратную АФЧХ для K-1(jω) = D(jω)/k (не нужно избавляться от мнимости в знаменателе). При этом изменяется формулировка критерия Найквиста. Для устойчивости в замкнутом состоянии обратная АФЧХ разомкнутой системы должна охватывать точку с координатами (-1, j0). Пример: оценить устойчивость системы (рисунок 22) по Найквисту. Решение. Поскольку необходимо оценить устойчивость имеющейся системы, ее предварительно следует сделать разомкнутой – разорвать контур обратной связи по сумматору. Передаточная функция разомкнутой систеРисунок 22 мы равна W ( s) 10 0,1 1 2 ; 2 s 1 s 1 блок с коэффициентом усиления 20 стоит вне контура обратной связи и на устойчивость системы не влияет. Проверим устойчивость системы в разомкнутом состоянии: характеристическое уравнение D(s) = 0; корни s1, 2 = j1 – система находится на колебательной границе устойчивости. Находим комплексный коэффициент передачи разомкнутой системы W(j) = 1/(1 - 2). Определяем частоты пересечения годоТаблица частот графа с осями координат: мнимая часть отсутстRe() Im() вует, приравниваем Re() = 0, видно, что корни, 0 1,00 0 т.е. частоты пересечения с мнимой осью, отсут0 0 ствуют. Зато имеется частота разрыва характери1,0 0 стики: уравнение 1 - 2 = 0 дает частоту разрыва 0,1 1,01 0 р = 1. В подобном случае обычно берут еще две 10,0 -0,01 0 частоты (произвольно) – немного меньше частоты разрыва и немного больше. 56 Пусть это будут частоты 0,1 и 10. Замкнутая система также находится на колебательной границе устойчивости (рисунок 23, а), т.к. АФЧХ проходит через точку (-1, j0). а б Рисунок 23 Пример: оценить по критерию Найквиста устойчивость после замыкания системы, заданной передаточной функцией W(s) = -1/(s3 + 2s2 + 3s + 1). Рассматриваемую систему предполагается замкнуть, значит она является разомкнутой и все построения выполняются для ее передаточной функции. Замкнутая система находится на апериодической границе устойчивости, поскольку АФЧХ разомкнутой системы (рисунок 23, б) начинается в точке (-1, j0), а корни с положительной действительной частью в ее характеристическом уравнении отсутствуют и иметь переходы критического отрезка не требуется. 2.8 Логарифмический критерий устойчивости Если заранее известна схема разомкнутой системы в виде последовательного соединения простых звеньев не выше второго порядка, критерий Найквиста удобнее использовать в логарифмическом виде. Обычная формулировка критерия: Замкнутая система устойчива, если в момент пересечения ЛФЧХ разомкнутой системы линии -180 ее ЛАЧХ отрицательна. Напомним, что значение ЛАЧХ L()=20lgA()=0 соответствует коэффициенту усиления, равному единице, и частоте сигнала, называемой частотой среза ср (рисунок 24, а). При этой частоте ЛАЧХ пересекает ось абсцисс (частот). Все значения ЛАЧХ, лежащие выше оси абсцисс, соответствуют усилению сигнала (k > 1), лежащие ниже оси абсцисс – ослаблению сигнала (k < 1). L() устойчива L() неустойчива устойчива ср ср lg () lg () lg 0 lg 0 -90 -180 -90 -180 -180 -180 а б Рисунок 24 57 В момент, когда фазовый угол равен -180, мы находимся на отрицательной действительной полуоси. Если при этом происходит усиление сигнала, то АФЧХ охватывает критическую точку (-1, j0) и система неустойчива. Если наблюдается ослабление сигнала, то АФЧХ не охватывает критическую точку (-1, j0) и система устойчива. Наконец, если частота -180 совпадает с частотой среза ср, то система находится на границе устойчивости. Общая формулировка охватывает дополнительно АФЧХ II рода и системы, неустойчивые в разомкнутом состоянии (рисунок 24, б). Замкнутая система устойчива, если на интервале положительности ЛАЧХ разомкнутой системы сумма переходов ее ЛФЧХ линии -180 равна p/2, где p – число правых корней характеристического уравнения разомкнутой системы. Следует отметить, что критерий Найквиста в логарифмической форме не столь однозначно характеризует устойчивость системы, как АФЧХ. Примером может служить система с ПФ W (s) 1 . s 2 s 3s 2 4 s 5 4 3 Если по АФЧХ (рисунок 25, а), используя правило штриховки, можно сделать заключение, что в замкнутом состоянии система будет неустойчивой, то из ЛЧХ это неясно. ЛАЧХ на всем интервале частот отрицательна (рисунок 25, б) и пересечение ЛФЧХ с линией -180° отсутствует. Можно предложить в качестве косвенного признака возможной неустойчивости системы (без вычисления корней) изменение направления движения ЛФЧХ с пересечением начального значения. а б Рисунок 25 При оценке устойчивости следует помнить о расхождении аппроксимирующей и действительной ЛАХ вблизи частот сопряжения. 58 2.9 Запасы устойчивости При проектировании системы бывает важно не только определить качественно – устойчива ли она, но и оценить количественно, насколько устойчива, как далеко значения параметров системы отстоят от критических величин. Такая количественная оценка называется запасом устойчивости. Запасы устойчивости обычно находят с помощью критерия Найквиста в обычном или логарифмическом виде. Оценка запасов устойчивости по АФЧХ (рисунок 26). Запас устойчивости по амплитуде Am устойчивой системы равен расстоянию от критической точки (-1, j0) до ближайшей точки пересечения АФЧХ с отрицательной действительной полуосью. Первый способ: измеряют непосредственно расстояние от точки (-1, j0) и до точки пересечения АФЧХ с действительной полуосью без учета знака, тогда для устойчивой системы запас по амплитуде будет находиться в пределах от 0 до 1, норма равна Рисунок 26 |Am| =1 - А(ω-π) 0,5.. 0,6. Второй способ: запас устойчивости по амплитуде находят как величину, обратную амплитуде А вектора при угле -180° или отрезку r, т.е. Am = 1/r, где r – расстояние от точки пересечения АФЧХ с отрицательной действительной полуосью до начала координат. Физически такая оценка говорит о том, во сколько раз можно увеличить усиление системы без угрозы потерять устойчивость. Значение Am = , имеющее место при отсутствии пересечения АФЧХ с отрицательной действительной полуосью, означает полную независимость устойчивости системы от величины ее коэффициента усиления. Запас устойчивости по фазе m равен углу между отрицательной действительной полуосью и лучом, проведенным из начала координат в точку пересечения АФЧХ с дугой единичного радиуса. Запас по фазе m = π - |φ(ωср)| находится в пределах от 0 до 180, при проектировании обычно нормой является m 30..60. Он характеризует возможность без изменения общего усиления системы добавлять звенья с суммарным сдвигом по фазе не более m. Максимальное значение m, равное 180, говорит о том, что смещение по фазе сигнала при прохождении его по данной системе никак не отражается на устойчивости системы. Запасы устойчивости иногда задают в процентах, например: Am Am 100 %, m m 100 %. 1 180 59 На практике возможны частные случаи расчета запасов устойчивости, когда необходимо учитывать особенности конфигурации конкретных АФЧХ. Это случай клювообразной АФЧХ, у которой при уменьшении фазы может уменьшаться и реальный запас устойчивости по амплитуде (рисунок 27, а), и расчет для АФЧХ II рода, у которой запас устойчивости по амплитуде должен определяться как при увеличении усиления Am>, так и при его уменьшении Am< (рисунок 27, б). jIm() Am -1 Am< Am> Re() -1 jIm() Re() m а б Рисунок 27 В сравнении с алгебраическими частотные критерии позволяют более наглядно представить опасные по условиям устойчивости зоны. Оценка запасов устойчивости по ЛЧХ (рисунок 28). Запас устойчивости по амплитуде Am равен отклонению ЛАЧХ от нуля в сторону отрицательных значений на ближайших к частоте среза ср частотах пересечения ЛФЧХ с линией минус 180. Запас устойчивости по фазе m равен отклонению ЛФЧХ на частоте среза ср от линии минус 180 в сторону положительных значений. Как обычно, прежде всего следует оценить, устойчива ли вообще данная система, только затем переходить к определению запасов устойчивости. Из графика видно, что у систем со сложной формой ЛАЧХ (АФЧХ) могут существовать два запаса устойчивости по амплитуде – запас на увеличение коэффициента усиления Am> и запас на уменьшение коэффициента Рисунок 28 усиления Am<. Напомним, что при увеличении коэффициента усиления ЛАЧХ смещается параллельно самой себе вверх, а при уменьшении – вниз. Нормы запасов устойчивости, рекомендуемые при проектировании: Am = |L()| = 20|lgA(ω-π)| 6…12 дБ; m 30…60. 60 3 Качество процессов регулирования 3.1 Показатели качества и методы их оценки Качество – свойство системы удовлетворять поставленным техническим требованиям с заданной эффективностью. Количественные оценки эффективности системы называются показателями качества. Хотя к показателям качества изделия относятся также энергопотребление, габариты, вес, стоимость и т.п., в настоящем разделе рассматриваются только показатели качества процесса регулирования. Качество регулирования оценивается только для устойчивых систем и лишь после проверки устойчивости. Точность системы в динамическом режиме определяется величиной и длительностью отклонения управляемой переменной y(t) от заданного значения r(t), в установившемся режиме – только величиной отклонения δ(t) (или ошибки регулирования ε(t)). Величина и длительность отклонений определяются видом входного воздействия, местом его приложения и собственными свойствами системы. Все переходные процессы можно отнести к одной из групп: 1 – монотонные процессы (рисунок 29); 2 – апериодические процессы, имеющие один или два экстремума; 3 – колебательные процессы. Оптимальным является апериодический процесс, обеспечивающий быстрый выход на заданный уровень при незначительных колебаРисунок 29 ниях. Показатели качества, определяемые непосредственно по переходным характеристикам, называют прямыми оценками качества, а сам метод их вычисления называется прямым. Менее точные методы оценки качества называются косвенными. К косвенным методам оценки качества относятся корневые, частотные и интегральные методы. Обычно качество исследуют при типовых входных воздействиях: 1(t) – скачок положения; t·1(t) – скачок скорости; t2·1(t) – скачок ускорения; A·sinωt ·1(t) – скачок качания. 3.2 Прямые оценки качества Прямые оценки качества определяются по переходной характеристике выхода y(t) или ошибки ε(t) относительно входа задания r(t) или возмущения f(t). Напомним, что переходная характеристика – это реакция системы на единичный скачок при нулевых начальных условиях. 61 Основные показатели качества (время регулирования, перерегулирование) характеризуют величину и длительность отклонения в динамическом режиме. Их определяют как прямым, так и косвенными методами, в частности, корневым и частотным. Время регулирования tрег или время переходного процесса tпп (время установления) – время перехода системы в новое устойчивое состояние после приложения воздействия (рисунок 30). Оно равно времени от начала переходного процесса до момента, после которого характеристика не отклоняется от установившегося значения более, чем на величину допустимой ошибки ∆. а) – выходная величина y(t) б) – ошибка регулирования ε(t) или h(t) или отклонение δ(t) Рисунок 30 Зону допустимой ошибки ∆=0,05·h(∞) или ∆=0,05·ε(0) откладывают с обеих сторон от линии установившегося значения. При ненулевых начальном или установившемся значениях в качестве допустимой зоны принимают 5% от разницы |h(∞)–h(0)| или |ε(∞)–ε(0)|. Для систем повышенной точности принимают ∆ = 2 %. Поэтому, указывая время регулирования, обязательно следует уточнять, при какой зоне ошибки ∆ оно получено. Время регулирования задается индивидуально для конкретных систем, типовые нормы отсутствуют, однако в общем случае чем оно меньше, тем качество регулирования выше. Перерегулирование σ – величина максимального относительного заброса переходной характеристики от начальной величины за линию установившегося значения (в относительных единицах или %) hmax 1 h() ( ) или max 1 . h() h(0) (0) () Перерегулирование характеризует склонность системы к колебаниям, рекомендуются значения не более 15…30 %, имеется в виду первый заброс. Дополнительно к перерегулированию может задаваться максимальное динамическое отклонение переходной характеристи- 62 ки от линии установившегося значения, обычно выражаемое в единицах измерения выходной величины. На рисунке 30, б максимальное отклонение равно ε(0), направлено противоположно перерегулированию и существенно превышает абсолютное значение заброса переходной характеристики за линию установившегося значения. При нулевых начальном и конечном значениях переходной характеристики (рисунок 31) перерегулирование σ = |εmax2 / εmax1|, а для оценки времени регулирования приниРисунок 31 мают зону ∆=0,05·εmax1 или ∆=0,02·εmax1. Дополнительные показатели качества регулирования. Время нарастания tн, характеризует скорость реакции в начальный период, определяется как: - время от начала процесса до момента пересечения кривой с линией установившегося значения – этот метод не подходит для оценки монотонных процессов, когда характеристика приближается к установившемуся значению асимптотически в течение бесконечного интервала времени; - промежуток времени между моментами достижения заданных уровней (например, 10 и 90 %) установившегося значения – более универсальный метод. Очевидно, что при указании времени нарастания следует указывать, каким способом оно получено. Время достижения первого максимума tmax (подразумевается, что система по характеристикам близка к системе второго порядка, а первый максимум кривой является и наибольшим из всех). Коэффициент колебательности N – число забросов переходной характеристики через линию установившегося значения за время регулирования, рекомендуется не более двух-трех забросов. Частота собственных колебаний ω = 2π/Тк, где Тк – период колебаний переходной характеристики (подразумевается система не выше третьего порядка с единственной колебательной составляющей). Степень затухания (демпфирования) – величина относительного уменьшения ψ = (hmax1 - hmax3)/hmax1 или ψ = (εmax1 - εmax3)/εmax1 амплитуды колебаний выходной величины за один период Тк, удовлетворительной считают систему с ψ = 0,75...0,95. При проектировании не всегда рассчитывают точную форму переходной характеристики, считают достаточным, чтобы она находилась внутри области допустимых отклонений (рисунок 32). Рисунок 32 63 Если можно косвенным путем, без построения h(t), оценить принадлежность переходной характеристики указанной области, график не строят. Если входное воздействие изменяется во времени, то и установившееся значение реакции системы непрерывно меняется, а время регулирования фактически является временем затухания свободной составляюРисунок 33 щей переходного процесса (рисунок 33). После окончания переходного процесса характеристика может точно совпадать с k·x(t), либо отличаться от этого значения. В первом случае установившаяся ошибка ε(∞) = 0 и система называется астатической, во втором случае ε(∞) ≠ 0, такая система называется статической. Установившаяся ошибка характеризует точность системы в статическом режиме. 3.3 Корневые оценки качества Корневые оценки учитывают влияние на вид переходного процесса положения полюсов и нулей системы на комплексной плоскости. Корневые методы обеспечивают достаточную точность только для систем первого-второго порядка при отсутствии нулей в ПФ. Корни, ближайшие к мнимой оси, называют доминирующими, если влиянием остальных корней можно пренебречь (остальные корни находятся в 5-10 раз дальше от мнимой оси). Расстояние от мнимой оси до ближайшего к ней корня (пары комплексных сопряженных корней) называется степенью устойчивости αmin или η, оно характеризует быстродействие системы (рисунок 34). Основные показатели качества регулироРисунок 34 вания определяют следующим образом. Для оценки времени регулирования tрег находят сначала степень устойчивости системы αmin или η, отсюда при ошибке ∆=5 % t ðåã 1 min ln 1 1 1 3 ln . min 0,05 min При заданной зоне ошибки 2 % вместо коэффициента 3 принимают приблизительно 4. Для оценки перерегулирования определяют прежде степень колебательности системы max tgmax , а затем значение пе- 64 ререгулирования e . Для расчета μ выбирают комплексный корень (полюс), у которого отношение мнимой части к действительной максимально. При единственной паре комплексных корней необходимость выбора отпадает. При нескольких парах комплексных корней максимальное значение μ у того корня, который первым встречается лучу, проведенному из начала координат по положительной мнимой полуоси и поворачиваемому против часовой стрелки. Сближение полюсов увеличивает размах переходного процесса. Сближение нуля с полюсом позволяет уменьшить или исключить (компенсировать) его влияние на качество процесса. Установлено, что наименьшее время регулирования соответствует совпадению действительных частей наибольшего числа полюсов. Корневым методом решают следующие задачи: - по заданным параметрам системы, входящим в характеристическое уравнение, найти показатели качества (задача анализа), - по заданным показателям качества найти допустимые или желаемые значения параметров системы (задача синтеза). Вторую задачу можно решать методом корневого годографа (если несложно вычислить корни характеристического уравнения системы), методом смещенного уравнения или методом D-разбиения. Метод смещенного уравнения. Проектируя систему, по заданному tрег находят степень устойчивости min. Если в плоскости корней провести вертикальную линию через min и считать, что это новая мнимая ось, то остальные корни характеристического уравнения должны находиться слева от этой оси, а новая система попадает на границу устойчивости, поэтому смещенное характеристическое уравнение (корни сдвинуты влево на min) a0 (s min ) n a1 (s min ) n1 ... an 0 должно удовлетворять граничным условиям устойчивости (например, по критерию Гурвица). Отсюда находят требуемые значения параметров. Пример: найти диапазон значений k, обеспечивающий tрег 5 с. Характеристическое уравнение системы D(s)=s3+3s2+4s+k=0. Находим αmin ≈ 3/5 ≈ 0,6. Смещенное характеристическое уравнение D(s)=(s-0,6)3+3(s-0,6)2+4(s-0,6)+k=s3+1,2s2+1,48s+k-1,536=0. По Гурвицу: используем условие нахождения системы на апериодической границе устойчивости an = 0, отсюда k–1,536 = 0, k =1,536; условие нахождения системы на периодической границе устойчивости 2 = 0 1,21,48 – (k – 1,536)=0, k = 3,311. Время регулирования tрег 5 с обеспечивается при 1,536 k 3,311. 65 Метод D-разбиения. В уравнении D(s) = 0 производится замена s min j или s max j в зависимости от того, по времени регулирования или перерегулированию производится выбор параметра. Выполняя далее стандартные операции D-разбиения, получают области заданной степени устойчивости или степени колебательности в пространстве изменяемых параметров системы. 3.4 Метод корневого годографа Метод применяют при проектировании систем регулирования для прогноза допустимых пределов изменения параметров системы по критериям устойчивости и качества регулирования. Совокупность траекторий, описываемых на комплексной плоскости корнями характеристического уравнения замкнутой системы при изменении одного из ее параметров от 0 до ∞, называется корневым годографом. Поскольку обычно делают оценку для замкнутой системы, то в ее характеристическое уравнение попадают и нули, и полюса разомкнутой системы. Если W p ( s ) k N ( s ) D p ( s ) , то Dç ( s) Dp ( s) k N ( s) . Чаще всего изменяют k – коэффициент усиления регулятора. При построении корневого годографа обычно используют или учитывают его свойства: - число ветвей корневого годографа равно степени характеристического уравнения; - ветви комплексных частей корневого годографа симметричны относительно действительной оси; - точки расхождения ветвей на действительной оси соответствуют кратным корням характеристического уравнения; - при k, стремящемся к нулю, траектории корней начинаются в полюсах передаточной функции разомкнутой системы; - при k, стремящемся к бесконечности, m траекторий корней заканчиваются в нулях передаточной функции разомкнутой системы, а остальные n-m ветвей асимптотически уходят в бесконечность. Здесь m – это порядок полинома числителя, а n – порядок полинома знаменателя передаточной функции системы. Число асимптот равно n–m, угол между асимптотами равен δ = 360/(n – m), градусов, первый угол, откладываемый от положительной действительной полуоси, равен δ/2. Центр пересечения асимптот (рисунок 35) удален от мнимой оси на расстояние 66 ( p z ) a a b b 1 0 1 0, nm nm где p – полюса, а z – нули системы, ai и bj – коэффициенты полиномов знаменателя и числителя передаточной функции соответственно порядка n и m. На ветвях стрелкой указывают направление движения корней при увеличении исследуемого параметра, а при ручном построении возле точек корневого годографа пишут значения параметров, при которых они получены. В качестве примера приведен корневой годограф системы четРисунок 35 вертого порядка. Метод корневого годографа широко используется при проектировании систем регулирования, позволяя оценить границы изменения исследуемого параметра, обеспечивающие заданные требования по устойчивости и качеству регулирования. 3.5 Частотные оценки качества Качество регулирования оценивают по АЧХ или ВЧХ. Рассмотрим методы оценки качества по вещественной частотной характеристике P(ω). Общие положения, вытекающие из свойств преобразования Фурье: - P(0)=h(∞)=kуст – конечное значение переходной характеристики численно равно начальному значению ВЧХ; - P(∞)=h(0) – начальное значение переходной характеристики численно равно конечному значению ВЧХ; - a·P(ω) ÷ a·h(t) – кратность изменения масштаба ВЧХ и переходной характеристики одинакова; - P(a·ω) ÷ h(t/a) – расширение полосы рабочих частот ведет к повышению быстродействия системы; - время tрег > π/ω+, где ω+ – граница интервала частот положительности ВЧХ. - перерегулирование σ определяется по форме ВЧХ (рисунок 36). а б в Рисунок 36 67 г Кроме ω+, для оценки качества используются также ω0 – частота собственных колебаний, и ωсущ – граница интервала существенных частот (полосы пропускания), вне которых текущее значение функции пренебрежимо мало P(ω) < (0,05…0,1)P(0). Критерии оценки: а) производная dP(ω)/dω < 0 – перерегулирование σ = 0; б) dP(ω)/dω ≤ 0 – ВЧХ – положительная невозрастающая функция, перерегулирование σ ≤ 18%, время регулирования лежит в границах от π/ω+ до 4π/ω+; в) dP(ω)/dω меняет знак, ВЧХ имеет подъем, перерегулирование равно 1,18 Pmax P(0) 100% , время регулирования такое же; P(0) г) ВЧХ терпит разрыв при ω=ω0, система совершает незатухающие колебания, tрег → ∞ и показатели качества не определяются. При оценке качества регулирования по АЧХ обычно оценивают значение частотного показателя колебательности, равное отношению максимума характеристики к ее начальному значению М = Ам/А(0) или отношению максимума характеристики к ее значению на частоте резонанса М = Ам/А(ωр). При М < 1 переходная характеристика системы не колебательна, при М → ∞ система находится на границе устойчивости, наблюдаются незатухающие колебания с частотой ωр. Оптимальным считается значение М = 1,1..1,5, которому соответствует перерегулирование 10-30 % и запас по фазе 30-50°. 3.6 Интегральные оценки качества Интегральные оценки качества регулирования позволяют получить совокупную (обобщенную) оценку быстродействия и колебательности без вычисления их значений. Они характеризуют отклонение реального переходного процесса от заданного идеального. 1) Интегральная линейная оценка (ИЛО) J 1 (t ) dt 0 определяется площадью отклонения реального процесса от идеального ступенчатого (рисунок 37). Она учитывает одновременно как величину динамических отклонений, так и длительность их существования. а б Рисунок 37 68 в Система тем лучше, чем меньше значение оценки (площадь заштрихованной фигуры, определяемой ошибкой регулирования). Недостатком оценки является то, что она дает хорошие результаты лишь для заведомо неколебательных, апериодических процессов. 2) Интегральная квадратичная оценка (ИКО) J 2 (t ) 2 dt 0 исправляет недостаток ИЛО – возможность неверной оценки качества при колебательном переходном процессе, когда сумма разнополярных полуволн может дать минимальную величину (рисунок 37, б). Недостаток этой оценки – из-за возведения сигнала ошибки в квадрат в значении интеграла существенно больший вес имеют первые (максимальные) отклонения от заданного значения. В итоге минимальные значения оценки всегда соответствуют колебательным процессам с малым затуханием. 3) ИЛО и ИКО оценивают качество процесса относительно ступенчатого образцового процесса. Для объектов, у которых такой процесс недопустим, применяют улучшенную интегральную квадратичную оценку J 3 (t ) 2 T 2(t ) 2 dt , 0 где T определяет крутизну процесса, а έ – его колебательность. Она позволяет получить оптимальный процесс с небольшим перерегулированием, близкий к экспоненте. Обычно коэффициент Т при производной отклонения выбирают равным желаемому времени нарастания tн или в диапазоне tрег/6 ≤ T ≤ tрег/3. Рассчитаны формулы для вычисления интегральных оценок через коэффициенты передаточной функции ошибки и стандартный интеграл. Например, если E (s) b0 b1 s ... bm s m a0 a1 s ... a n s n , то J 1 b0 . 2a0 a1 Абсолютное значение любой из интегральных оценок несущественно, представляет интерес лишь направление изменения оценки (в сторону увеличения или уменьшения) при изменении заданного параметра регулятора одной и той же системы для выбора наилучшего значения этого параметра. 69 Интегральные критерии применяют в теории оптимальных систем, где их вычисляют как целевые функции. Оптимальными являются те значения параметров настройки системы, которые соответствуют минимуму используемой интегральной оценки качества. 3.7 Оценка качества в установившемся режиме Установившаяся ошибка характеризует точность системы в статическом режиме и равна отклонению действительного значения регулируемой величины от заданного. Система с нулевой установившейся ошибкой ε(∞) = 0 называется астатической, а при ε(∞) ≠ 0 и система и ошибка называются статическими. В общем случае установившаяся ошибка складывается из нескольких составляющих ε(∞) = εr(∞) + εf(∞) + εап(∞), где εr(∞) – ошибка отработки задающего воздействия, εf(∞) – ошибка от возмущающего воздействия, εап(∞) – аппаратная погрешность. Ошибка зависит от вида входного воздействия, места его приложения и степени астатизма ν разомкнутой системы. По умолчанию подразумевают вход задания – r(t), вид воздействия – скачок при нулевых начальных условиях, в ином случае эти параметры должны оговариваться специально. Рассмотрим случай, когда вход – r(t), воздействие – скачок, число нулевых полюсов разомкнутой системы ν = 0 (рисунок 38). r(t) f(t) ε(t) u(t) y(t) kp k0 Рисунок 38 r () r (t ) y(t ) r f () f 1 , 1 k p k0 k0 , 1 k p k0 где kpk0 – коэффициент усиления системы kc. Из формулы видно, что значение ошибки зависит: - от величины входного воздействия r или f – пропорционально; - от коэффициента передачи по каналу ошибки от задания или возмущения – пропорционально; - от общего коэффициента усиления системы kc = kp·k0 – обратно пропорционально. 70 Относительная величина установившейся ошибки называется коэффициентом статизма (статизмом) системы по соответствующему каналу. Sr Sf r ( ) r f ( ) f 1 1 kc – статизм от задания, k0 1 kc – статизм от возмущения. Из формулы следует, что ошибку регулирования и статизм можно уменьшить, увеличивая общий коэффициент усиления системы. По заданной величине статизма (относительной статической ошибки) системы можно выбрать требуемый коэффициент усиления. Пример: пусть допустимая ошибка не должна превышать значения ε(∞) = 2% или ε(∞) = 0,02, для этого необходим коэффициент усиления не менее 0,02 1 1 0,02 kc 49 . 1 kc 0,02 Изменим при тех же условиях порядок астатизма ν = 1 (рисунок 39, а), для чего введем в состав регулятора звено с нулевым корнем в знаменателе (интегратор), и рассчитаем значение установившейся ошибки по заданию и от возмущения, как конечное значение оригинала. r(t) ε(t) k p u(t) f(t) k0 y(t) r(t) ε(t) u(t) kp s а f(t) k0 s y(t) б Рисунок 39 Wr ( s ) 1 s ; k 1 c s kc s Wf ( s ) k0 k0 s ; k 1 c s kc s r ( ) s 1 s 0. s kc s s 0 f ( ) k0 s 1 s 0 . s kc s s 0 Увеличение астатизма разомкнутой системы при том же воздействии привело к исключению статической ошибки. Введем теперь интегратор в ПФ объекта (рисунок 39, б). 71 Wr ( s ) s s ( s ) ; осталось r s kc s kc 0. s 0 k0 k0 0. , изменилось f () s kc kc Вывод: устраняют статическую ошибку только интеграторы, размещенные вне цепи прямой связи сигнала ошибки. Сформулируем общее правило: если записать ПФ системы в виде W(s) = W0(s)/sν, а входное воздействие в виде R(s) = M(s)/sr, то: - при r < ν+1 => εr(∞)=0; - при r = ν+1 => εr(∞)=const; - при r > ν+1 => εr(∞)= f(t). Wf ( s ) 3.8 Коэффициенты ошибок Установившийся динамический режим имеет место при возмущенном движении системы с момента затухания свободной составляющей переходного процесса. Считая, что входное воздействие аппроксимируется полиномом от t, т.е.разлагается в степенной ряд t2 tm r (t ) A0 A1t A2 ... Am 1(t ) , 2 m! для расчета вынужденной составляющей ошибки используют метод коэффициентов ошибок. По этому методу передаточную функцию ошибки представляют в виде аналогичного ряда W ( s ) C0 C1s C2 s 2 ... Cm s m , где С0 – коэффициент статической ошибки (позиционной), С1 – коэффициент ошибки по скорости, С2 – коэффициент ошибки по ускорению. Сравнивая две формы записи передаточной функции ошибки, находим значения коэффициентов ошибок (в обоих случаях полиномы начинаются со свободного члена) bm bm1 s ... b0 s m W ( s ) C0 C1 S C2 s 2 ... Cm s m n an an1 s ... a0 s 72 1 bm , an 1 → C1 bm1 an1C0 , an 1 → C2 bm2 an2C0 an1C1 и т.д. an → C0 s0 → bm=anC0 s1 → s2 → Пример: найдем три первых коэффициента ошибок для системы 1 3 2 s s2 s3 2 s 3s s 0 s 3s 2 s k k k Wr ( s) 3 2 2 3 1 3 2 2 3 . 2 s 3s s k k s 3s 2 s 1 s s s k k k 3 2 2 3 0 1 0 0 , k 1 1 C1 (1 1 0) , k k 1 1 3k 1 C 2 (3 3 0 1 ) . k k k2 C0 Вынужденная составляющая ошибки равна r (t ) C0 r (t ) C1 r (t ) C 2 r (t ) . Пусть задающее воздействие равно r r0 vt at 2 / 2 , тогда производные r v at , r a и установившаяся динамическая ошиб1 3k 1 ка при С0 = 0 имеет вид r (t ) (v at) a. k k2 Обычно вычисляют не более трех первых коэффициентов ошибок. Общий коэффициент усиления разомкнутой цепи k (добротность) находится в знаменателе всех выражений, обуславливает уменьшение всех видов ошибок и является главным фактором повышения точности замкнутой системы автоматического регулирования. Коэффициенты передачи ошибки называются: b – позиционная добротность; k m an b – добротность по скорости; bm 0, k m1 an b – добротность по ускорению. bm 0, bm1 0, k m2 an 73 3.9 Построение переходного процесса по ВЧХ Переходные характеристики наиболее наглядно представляют динамические свойства САР. Их построение производится на основе численных, аналитических и графоаналитических методов. Численные методы используются, как правило, в специализированных пакетах прикладных программ для ЭВМ. К аналитическим (точным) относятся классический и операторный методы решения дифференциальных уравнений. Классический метод основан на решении характеристического уравнения при определении его корней и решении системы алгебраических уравнений при определении постоянных интегрирования с учетом начальных условий. Трудности существенно возрастают с увеличением порядка дифференциального уравнения и появлением производных в правой его части, поэтому в ТАУ классический метод находит ограниченное применение. Решение дифференциального уравнения операторным методом сводится к отысканию оригинала функции по известному ее изображению путем обратного преобразования Лапласа. Здесь также требуется нахождение корней характеристического уравнения, однако, благодаря действиям над передаточными функциями, которые определяются при нулевых начальных условиях, отпадает сложная операция определения произвольных постоянных интегрирования. Этот метод является основным, используемым в инженерной практике ТАУ. Графоаналитические (частотные) методы построения переходных процессов САУ основаны на связи временных и частотных характеристик, вытекающей из подобия преобразований Лапласа и Фурье. Наиболее распространено построение переходной характеристики h(t) по вещественной частотной характеристике P(ω) в соответствии с зависимостью 2 P 2 sin t h(t ) sin t d P d . 0 0 По этому методу действительную ВЧХ заменяют асимптотической, т.е. ломаной линией из прямых отрезков, по которым затем формируют типовые трапеции (В. В. Солодовников) или типовые треугольники (А.А. Воронов). Каждая трапеция начинается от ω = 0, ее вершина ограничена частотой ω1, а основание частотой ω2. Необходимые параметры трапеций, которые требуется вычислить: коэффициент масштаба k1 = Р(0) – Р(ω2) и коэффициент наклона k2 = ω1/ω2, который изменяется в пределах от 0 (тогда трапеция вырождается в треугольник) до 1 (тогда имеет место прямоугольник). 74 Существуют таблицы h-функций, в которых приведены расчетные значения переходной характеристики для типовых единичных трапеций, например, с шагом по коэффициенту наклона 0,05 от 0 до 1, с шагом по табличному времени 0,5 с от 0 до 26 с [7]. Чтобы перейти от типовой характеристики к реальной, необходимо умножить каждое значение h(t) из таблицы на коэффициент масштаба k1 и изменить масштаб времени, разделив табличное время tтабл на значение частоты ω2 . Главное достоинство метода – отсутствие необходимости в вычислении корней характеристического уравнения. Наиболее сложным в нем является согласование масштабов по времени, поскольку после перехода от табличного времени к реальному изменяется как временной диапазон построения каждой характеристики в целом, так и шаг, который у каждого графика оказывается индивидуальным. Пример: построить переходную характеристику для системы с ПФ W ( s) 1 , s 3 2 s 2 3s 4 ВЧХ которой показана на рисунке 40, а. а б Рисунок 40 Заменяем реальную ВЧХ асимптотической, проводя к ней касательные. Первая трапеция ограничена вершинами а-б-в-г, она имеет коэффициент масштаба k1 = 0,25 – (-0,65) = 0,9 и коэффициент наклона k2 = 1,4/1,6 ≈ 0,85, где ω1 = 1,4 рад/с, ω2 = 1,6 рад/с. Вторая трапеция ограничена вершинами г-в-д-е, она имеет коэффициент масштаба k1 = -0,65 и коэффициент наклона k2 = 1,6/2,1 ≈ 0,75, где ω2 = 2,1 рад/с. Для более точного построения процесса целесообразно было бы сформировать третью трапецию на уровне -0,2, с частотами ω1 = 2 рад/с, ω2 = 3,5 рад/с, однако в целях упрощения примера мы ограничимся двумя основными трапециями. Воспользуемся таблицей h-функций, сведя результаты пересчета в таблицу 5. Приведем к общему (наименьшему) интервалу масштаб всех характеристик по 75 оси времени, после чего выполним суммирование ординат кривых, соответствующих индивидуальным переходным функциям h1(t) и h2(t) (рисунок 40, б), получив результирующую характеристику h(t). Масштаб графика по оси времени определяется наименьшим вычисленным значением интервала t, в данном случае 11,905 с. Таблица 5 tтабл 0 1 2 3 4 5 6 7 8 9 10 15 20 25 Трапеция 1 (k2 ≈ 0,85) Трапеция 2 (k2 ≈ 0,75) t1=tтабл/ω2 hтабл h1=hтабл·k1 t2=tтабл/ω2 hтабл h2=hтабл·k1 0 0 0 0 0 0 0,625 0,560 0,504 0,476 0,534 -0,347 1,250 0,974 0,877 0,952 0,938 -0,610 1,875 1,162 1,046 1,429 1,143 -0,743 2,500 1,150 1,035 1,905 1,161 -0,755 3,125 1,036 0,932 2,381 1,069 -0,695 3,750 0,934 0,841 2,857 0,956 -0,621 4,375 0,909 0,818 3,333 0,917 -0,596 5,000 0,955 0,860 3,810 0,936 -0,608 5,625 1,023 0,921 4,286 0,990 -0,644 6,250 1,059 0,953 4,762 1,036 -0,673 9,375 1,018 0,916 7,143 0,977 -0,635 12,500 0,982 0,884 9,524 1,001 -0,651 15,625 0,997 0,897 11,905 1,000 -0,650 Следует заметить, что, в связи с широким распространением компьютерной техники, сравнительно просто реализующей численные методы решения дифференциальных уравнений, также не требующие вычисления корней, частотные методы построения переходных характеристик постепенно утрачивают свою актуальность. 76 4 Многомерные системы управления 4.1 Переменные состояния Передаточной функцией описываются простые системы с одним входом и одним выходом (одномерные или SISO). Многомерной (MIMO, т.е. Multi-Input Multi-Output) называется система (объект), имеющая более одного управляемого входа (наблюдаемого выхода). При этом подразумевается, что систему нельзя разбить на независимые подсистемы с отдельными входом и выходом, т.е. между подсистемами (каналами регулирования) имеются взаимосвязи. К внутренним отнесем те связи, что физически существуют между выходными (регулируемыми) величинами в самом объекте: изменение одной координаты всегда сказывается на значении другой координаты. Внешними по отношению к объекту являются связи, организуемые в управляющей схеме (перекрестные связи между регуляторами). Иногда целью организации перекрестных связей является устранение взаимосвязи между регулируемыми величинами, что приводит к автономному регулированию (когда изменение одной регулируемой величины не ведет к изменению других). Подсистемы регулирования можно считать условно автономными при значительном отличии их скоростных характеристик, например, различии на порядок времени регулирования по каждому из контуров. В некоторых системах применяется подчиненное регулирование, когда выходной сигнал предыдущего контура регулирования служит заданием для последующего контура, здесь важно наблюдать сразу несколько сигналов. Многомерные системы описываются в пространстве состояний методом переменных состояния с помощью векторно-матричного представления. N-мерное пространство, координатами которого являются переменные состояния xi, называют пространством состояний, а способ векторно-матричного описания системы – методом пространства состояний. Переменные состояния образуют минимальный набор независимых переменных, достаточный для полного описания состояния системы в любой момент времени. Их число равно порядку системы и наоборот. Переменные состояния соответствуют: - фактически контролируемым параметрам (реально существующим выходам системы) – в этом случае они назначаются единственным образом. Примером служат ток в катушке индуктивности и напряжение на конденсаторе RLC-контура – объекта второго порядка; - абстрактным математическим величинам, тогда они назначаются произвольным образом и разными способами. 77 Методы пространства состояний обычно относят к современной теории управления, чтобы отличить их от моделей одномерных систем (классических). Эти методы наиболее эффективны, если переменные состояния назначены непосредственно по структурной схеме системы, соответствующей ее конструктивному построению, что позволяет наблюдать процессы не только на выходах, но и во всех внутренних узлах системы. К их достоинствам относят также более высокую устойчивость и эффективность численных векторно-матричных методов по сравнению с одномерными при реализации последних на ЭВМ. В остальных случаях преимущества векторно-матричного описания не столь очевидны. В частности, таким образом не могут быть описаны отдельно звенья, у которых порядок полинома числителя больше порядка полинома знаменателя (дифференцирующие, форсирующие), и элементы с запаздыванием, создающие задержку появления сигнала на выходе относительно момента его формирования на входе. А формально выбранные переменные состояния не дают реального представления о процессах внутри физической системы. 4.2 Переход к пространству состояний Поведение во времени системы, описываемой по методу один вход-один выход, характеризуется общим обыкновенным дифференциальным уравнением (ОДУ) n-ого порядка. При описании системы в пространстве состояний методом вход-состояние-выход, ему соответствует система n дифференциальных уравнений первого порядка в нормальной форме Коши, разрешенных относительно производной. Среди методов перехода от описания посредством ОДУ к описанию переменными состояния наиболее распространен метод фазовых переменных. По этому методу за первую переменную состояния принимают выходную величину, за остальные переменные состояния принимают n–1 производную выходной величины. Рассмотрим в первую очередь ОДУ объекта регулирования без производных в правой части a0y(n) + a1y(n-1) + … + any = b0u. Выразим выходную величину y(t) и ее производные через переменные состояния xi(t) x1 (t ) y (t ), x2 (t ) y (t ) x1 (t ), x3 (t ) y (t ) x 2 (t ) ... (êðîìå ïîñëåäíåé ). Разрешив уравнения относительно первых производных и подставив их в исходное уравнение, получают матричное дифференциальное уравнение состояния 78 x1 (t ) x2 (t ) x 2 (t ) x3 (t ) ... x n1 (t ) x n (t ) xn (t ) an a b a x1 (t ) n1 x2 (t ) ... 1 xn (t ) 0 u (t ) a0 a0 a0 a0 и алгебраическое уравнение наблюдения (выхода) y(t) = x1(t). Полная матричная запись этих уравнений x1 (t ) 0 x (t ) 0 2 ... ... 0 x ( t ) n1 an xn (t ) a0 1 0 ... 0 1 ... 0 an1 a0 0 an2 a0 x (t ) 0 1 x2 (t ) 0 ... ... u (t ) ... 1 x (t ) 0 n 1 a ... 1 x (t ) b a 0 0 a0 n ... ... ... 0 0 ... x1 (t ) x (t ) 2 y (t ) 1 0 0 ... 0 ... xn1 (t ) xn (t ) соответствует записи в свернутом виде x (t ) A x(t ) B u(t ) y (t ) C x(t ) Иногда записывают СТ, чтобы подчеркнуть, что это горизонтальная матрица (вектор-строка), но самого транспонирования не делают. Если система имеет один вход и один выход, то b, c – векторы. Принятые обозначения: x(t) – вектор переменных состояния, x (t ) – вектор производных переменных состояния, u(t) – вектор входных воздействий (управлений), y(t) – вектор выходных величин (реакций), A(n x n) – матрица собственных коэффициентов системы, B(n x m) – матрица коэффициентов входа (m – число входов), C(l x n) – матрица коэффициентов выхода (l – число выходов). Указанной системе уравнений соответствует обобщенная структурная схема объекта регулирования в пространстве состояний (рису- 79 нок 41), где двойными линиями обозначены векторные многомерные сигналы; основу схемы образует набор интеграторов 1/s. Рисунок 41 Алгоритм перехода от ОДУ к пространству состояний: – нормировать ОДУ по коэффициенту a0 при старшей производной выходной величины (разделить на него обе части уравнения); – составить сопровождающую квадратную матрицу А размера n×n, записав единицу во вторую позицию первой строки нулевой матрицы, смещая ее вправо в каждой следующей строке, и поместив в последнюю строку с обратным знаком коэффициенты характеристического полинома, начиная со свободного члена; – в последнюю строку нулевой матрицы В записать коэффициент при входном воздействии; – в первую позицию нулевой матрицы С записать единицу. Пример: по исходному дифференциальному уравнению составим матрицы 3 d2y dy 2 y(t ) 4u (t ) dt dt 2 1 0 A 1 3 2 0 ; b 4 3; c 1 0 . 3 Развернутое описание системы управления 1 x1 0 x1 0 x 1 3 2 3 x 4 3 u 2 2 x y 1 0 1 x2 Пример: По ОДУ системы 2y(4) + 3y(3) + 7y(2) + 4y(1) + y = 10u записываем и нормируем передаточную функцию W ( s) 10 5 , 2 s 4 3s 3 7 s 2 4 s 1 s 4 1,5 s 3 3,5 s 2 2 s 0,5 откуда следует описание системы 80 1 0 0 0 0 0 0 0 1 0 x x u 0 0 0 0 1 0,5 2 3,5 1,5 5 y 1 0 0 0 x Если ОДУ имеет производные входной величины в правой части a0y(n) + a1y(n-1) + … + any = k(b0u(m) + b1u(m-1) + … + bmu) и m<n, то вид сопровождающей матрицы А не изменяется, в последнюю строку матрицы b помещают нормированный общий множитель правой части, а матрицу с заполняют, начиная с коэффициента bm перед входной функцией (в обратном порядке) 0 0 . c bm bm1 ... b0 ... 0; b ... k / a0 Пример: дифференциальное уравнение системы уже нормировано по старшему коэффициенту a0, поэтому сразу перейдем к пространству состояний d3y d2y dy dy 2 3 4 y 5 6u dt dt dt 3 dt 2 1 0 0 0 x (t ) 0 0 1 x(t ) 0 u (t ) , 4 3 2 1 y (t ) 6 (считаем k = 1). 5 0 x(t ) Важное замечание: если вид матриц А, В, С соответствует описанию системы с одним входом и одним выходом методом фазовых переменных, то по матрицам можно восстановить вид передаточной функции без специальных вычислений. Пример: для системы, описанной в пространстве состояний уравнениями 1 0 0 0 x (t ) 0 0 1 x(t ) 0 u (t ) 0,5 1,5 2 1 y (t ) 0 2,5 0 x(t ) 81 передаточная функция имеет вид W ( s) 2,5 s . Все элементы s 3 2 s 2 1,5 s 0,5 вектора с умножаются на коэффициент вектора b, причем первый элемент соответствует свободному члену полинома числителя ПФ, второй – коэффициенту при s, третий – при s2 и т.п., а передаточная функция всегда оказывается нормированной по старшему коэффициенту знаменателя, взятого из матрицы А. Матрицы В и С взаимосвязаны, поэтому при изменении одной из них обязательно изменяется другая. Поскольку они расположены по пути следования сигнала от входа к выходу системы последовательно, их соответственные коэффициенты перемножаются. Более сложным является преобразование ОДУ с одинаковым порядком производных входной и выходной величин. Если порядок производных входа и выхода одинаков (m = n), появляется дополнительная матрица D(l × m) коэффициентов обхода (рисунок 42). Рисунок 42 Соответственно изменяется и вид системы уравнений x (t ) A x(t ) B u(t ) . y (t ) C x(t ) D u(t ) Если m < n, то матрица D нулевая и ее допускается не писать. Пусть передаточная функция объекта с m = n равна 3s 2 2 s 1 . W ( s) 2 s 2s 3 Разделив числитель на знаменатель, получим в результате W ( s) 4s 8 3. s 2 2s 3 Коэффициент 3 целой части характеризует обходной путь от входа системы к ее выходу, он-то и образует матрицу D. 82 4.3 Каноническая управляемая форма Рассматривая передаточную функцию, мы выяснили, что она имеет по крайней мере три представления (не считая записи в виде нулей и полюсов): произвольное, нормированное по старшему коэффициенту при s, нормированное по свободному члену. Нормированные представления удобны для определенного рода операций с системой и позволяют выявлять равносильные системы. Соответственно, и описание системы в пространстве состояний имеет несколько стандартных представлений, помимо произвольного. Следует попутно заметить, что при составлении описания по передаточной функции или дифференциальному уравнению, а также в результате преобразований модели, теряется смысл единиц измерения параметров внутри системы, в связи с чем исследование систем в пространстве состояний производится, как правило, в безразмерной форме. Каноническим называется упрощенное описание объекта в пространстве состояний, предназначенное для определенного вида операций. Каноническая форма представления характеризуется тем, что матрица А является либо сопровождающей (называется также фробениусовой или матрицей Фробениуса), либо диагональной. С сопровождающей матрицей А мы уже познакомились, ее свойство – по одной из сторон выписывается характеристический полином системы, нормированный по старшему коэффициенту и взятый с обратным знаком. Диагональная или блочно-диагональная матрица А в канонической форме образуется из корней характеристического полинома системы. Представление объекта называется канонической управляемой формой, если матрица B (вектор b) записывается формально (без вычислений) и содержит единственную 1 при остальных нулевых элементах. Для перехода к этой форме после нормирования по а0 производится вычисление матрицы с (и вектора d, если m=n); сопровождающая матрица А находится обычным образом, вектор b содержит нули в строках с первой по предпоследнюю и 1 в последней строке. Назовем это переходом через матрицу с: d = b0; c1 = bn - an∙d; c2 = bn-1 – an-1∙d … и т.п. Очевидно, что при d = b0 = 0 формулы для вычисления элементов вектора с сводятся к более простому варианту, используемому для систем с m < n, т.е. просто в матрицу с записываются коэффициенты числителя передаточной функции, начиная со свободного члена. 3s 2 2 s 1 Пример: передаточная функция объекта равна W ( s) 2 . s 2s 3 83 Описание системы в пространстве состояний (нормирование не нужно) 1 0 0 A ; b 1 3 2 c 8 4 ; d 3 где c1 = b2 – a2d = 1 – 9 = -8 c2 = b1 – a1d = 2 – 6 = -4 Сравнение с предыдущим расчетом позволяет предложить еще один путь перехода к пространству состояний при m = n: нужно разделить числитель ПФ на ее знаменатель, получившееся отдельно стоящее слагаемое (частное) поместить в матрицу d, а коэффициенты числителя полученной рациональной дроби (остатка) записать в матрицу с, начиная со свободного члена, т.е. как обычно. Пример: Сначала нормируем ПФ по старшему коэффициенту знаменателя, s 2 3 s 2 0,5 s 2 1,5 s 1 W ( s) 2 2 , затем вычисляем матрицы 2s 4 s 1 s 2 s 0 ,5 1 0 0 A ; b ; c 0,75 0,5; d 0,5 . 0,5 2 1 Можно применять простое мнемоническое правило вычисления элементов матрицы с по ПФ: начинают справа, движутся влево по дроби, беря произведение коэффициентов числителя и знаменателя справа налево вниз – с плюсом, слева направо и вниз – с минусом. – 0,5 s 2 1,5 s 1+ c1 1 1 0,5 0,5 0,75 , s 2 2 s 0,5 – 0,5 s 2 1,5+s 1 c2 1,5 1 0,5 2 0,5 . s 2 2 s 0,5 Система в пространстве состояний может быть представлена набором интеграторов, т.е. звеньев, осуществляющих операцию интегрирования входной величины по времени, сумматоров и блоков, воспроизводящих коэффициенты усиления в собственных и перекрестных связях. Например, представление в канонической управляемой форме с переходом через матрицу с объекта второго порядка c m < n (рисунок 43), без учета коэффициента 1 матрицы b на входе для воздействия u соответствует передаточной функции W(s) = (b1s + b2)/(s2 + a1s + a2) и матрицам коэффициентов передачи в пространстве состояний 0 A a2 1 0 ; b 1; c b2 a1 84 b1 . Рисунок 43 Переменные состояния х1, х2 назначены методом фазовых переменных. Если изменить порядок назначения переменных состояния, т.е. на схеме переменные х1, х2 поменяются местами, будет иметь место транспонированная каноническая форма управляемости, а именно a A 1 1 a2 1 ; b 0; c b1 b2 0 Здесь переход к пространству состояний проще: после нормирования по a0 в первую строку сопровождающей матрицы записываются коэффициенты характеристического полинома с обратным знаком в порядке возрастания индекса, начиная с a1, в оставшуюся часть матрицы А вписывается единичная матрица (без последней строки); матрица b заполняется формально, с единицей в первой строке. Матрица с включает коэффициенты числителя ПФ в порядке возрастания индексов, при необходимости места спереди заполняются нулями. Если m = n, т.е. матрица d ненулевая, элементы матрицы с вычисляются по правилу d = b0; c1 = b1 – a1∙d, …, сn = bn – ∙an∙d. 4.4 Каноническая наблюдаемая форма По аналогии с управляемой формой признаком наблюдаемой формы является формальное составление матрицы с из нулей и единицы, а вычисляются матрица b и, при необходимости, матрица d. Назовем это переходом через матрицу B. Сопровождающая матрица А выглядит после нормирования по старшему коэффициенту при s в знаменателе ПФ, как в канонической управляемой форме, первый элемент матрицы с равен 1, а остальные 0. Покажем принцип расчета элементов матриц b и d: Пусть W ( s) k0 sm k1 sm1 ... k m , m = n, тогда sn a1 sn1 ... an D = k0 = b 0 , 85 b1 = k1 – b0a1, b2 = k2 – b0a2 – b1a1, b3 = k3 – b0a3 – b1a2 – b2a1 … Пример: по уравнению y(3) + 2y(2) + 3y(1) + 4y = 5u(1) +6u составим каноническую наблюдаемую форму. Нормирование по старшему коэффициенту знаменателя при sn не требуется, так как он уже равен единице, многочлен числителя ПФ дополняем коэффициентами до той же степени, что и многочлен знаменателя b1 0 2 0 0 0 s 3 0 s 2 5s 6 , W ( s) 3 s 2 s 2 3s 4 b2 5 2 0 0 3 5 b3 6 5 2 0 3 0 4 4 и окончательно 1 0 0 0 A 0 0 1 ; b 5 ; c 1 0 0; d 0 . 4 3 2 4 Простое мнемоническое правило вычисления элементов вектора b: вычисляя новый член вектора, надписываем его над соответствующим коэффициентом числителя передаточной функции. Начинают слева c k1, движутся вправо по дроби, беря первое произведение коэффициентов числителя и знаменателя справа налево вниз – с плюсом, остальные произведения слева направо и сверху вниз – с минусом. + 0 s3 0 s 2 5s 6 b1 0 1 0 2 0 , 1s 3 2 s 2 3s 4 0 + 0 5 0 s3 0 s 2 5s 6 b2 5 1 0 2 0 3 5 , 1s 3 2 s 2 3s 4 + 0 s3 0 s 2 5s 6 b3 6 1 5 2 0 3 0 4 4 . 1s 3 2 s 2 3s 4 Заметим, что если в канонической управляемой форме элементы матрицы с вычисляются лишь при ненулевой матрице d, а в остальных случаях просто используются коэффициенты полинома числителя передаточной функции, то в канонической наблюдаемой форме вычисление элементов матрицы b производится всегда. Например, для системы второго порядка с ПФ вида W(s) = (k1s+k2)/(s2+a1s+a2) и m<n элементы вектора b соответственно равны b1 = k1, b2 = k2 – b1a1. 86 Представляется целесообразным отказаться от единообразия в форме матрицы А ради облегчения работы с коэффициентами передаточной функции при преобразовании. Для этого составим специальным образом структурную схему системы. Представление объекта с ПФ W(s) = (b1s + b2)/(s2 + a1s + a2) в канонической наблюдаемой форме с использованием вектора b (рисунок 44) без учета коэффициента 1 вектора с на выходе y соответствует матрицам коэффициентов a A 1 a2 1 b ; b 1 ; c 1 0 . 0 b2 Рисунок 44 Теперь переход к пространству состояний проще: после нормирования по a0 в первый столбец сопровождающей матрицы записываются коэффициенты характеристического полинома с обратным знаком в порядке возрастания индекса, начиная с a1, в оставшуюся часть матрицы А вписывается единичная матрица (без последнего столбца); матрица с заполняется формально, с единицей в первом столбце. Матрица b просто включает коэффициенты числителя ПФ в порядке возрастания индексов, при необходимости места сверху дополняются нулями. Лишь если m = n, т.е. матрица d ненулевая, элементы матрицы b вычисляются по правилу d = k0; b1 = k1 – a1∙d, …, bn = kn – ∙an∙d. 4.5 Описание по структурной схеме На структурной схеме системы регулирования переменные состояния могут быть назначены различным образом, а, следовательно, и описания системы в пространстве состояний будут отличаться. Однако правила составления дифференциальных уравнений для каждого блока являются общими и состоят в следующем. Переменная всегда назначается на выходе блока, записывают ОДУ первого порядка для каждого блока с s в знаменателе в зависимости от вида знаменателя: а) звено с нулевым корнем в знаменателе (рисунок 45, а) dx1 dt kx2 или x1 kx2 ; 87 а б Рисунок 45 в б) звено с действительным корнем, две формы (рисунок 45, б) dx1 kx2 x1 или x1 kx2 x1 ; dt x1 1 kx2 x1 . T Правая часть после нормирования равна произведению входа на числитель минус произведение выхода на коэффициент знаменателя). Звено c комплексными сопряженными корнями (рисунок 45, в), не разлагается на два простых, поэтому вводят условно переменную состояния с промежуточным индексом и составляют два уравнения. x1 x2 ; x2 1 kx3 T2 x2 x1 . T1 Эта запись соответствует рассмотренному выше переходу от дифференциального уравнения к пространству состояния через матрицу b с нормированием по старшему коэффициенту знаменателя 0 A 1 T 1 1 0 T2 ; b k ; c 1 0 . T T1 1 Из предыдущего пункта следует, что любой блок порядка n>1 может быть описан с использованием перехода через матрицу b без его разложения на простые звенья. В особенности это необходимо, если блок имеет нули, т.е. порядок полинома числителя его передаточной функции не менее единицы. W (s) 0 A → 1 / T s 2 T2 / T1 s 1 / T1 1 0 s 2 0 s k / T1 x 0 ; b . T2 / T1 k / T 1 1 Умножая матрицу А на вектор 1 и вектор b на вход x3, полу x2 чаем систему уравнений, которую затем совмещаем с уравнениями оставшейся части структурной схемы. Поскольку в пространстве состояний не могут быть отдельно описаны дифференцирующие и форсирующие звенья с m > n, то, по- 88 лучив в правой части уравнения дополнительную производную с индексом, меньшим текущего номера уравнения, ее пробуют выразить через значение, полученное ранее, в предыдущих дифференциальных уравнениях. Обычно это имеет место при обратных связях через s. Рассмотрим порядок перехода посредством метода фазовых переменных (классический метод). Подготовка системы к преобразованию в большинстве случаев выполняется следующим образом: – разбивают, если возможно, сложные звенья на простые не выше второго порядка, соответствующие простым дробям; – переносят звенья с s в знаменателе из обратных и вспомогательных прямых связей в главную прямую связь; – совмещают звенья без s или с s в числителе с другими звеньями более высокого порядка; – назначают переменные состояния в порядке возрастания индексов, начиная с выхода, двигаясь встречно по главной прямой связи ко входу, при каждом переходе через s в знаменателе, исключая последний; – записывают дифференциальные уравнения для каждого блока и уравнения наблюдения (выхода). Пример: исходная схема (рисунок 46) требует ряда преобразований u Нужно убрать (перенесем узел) 1 s 2 s 1 s f y 4 s3 -3 5 s2 Нужно убрать (примем за выход) Рисунок 46 Подготовленная к описанию фазовыми переменными состояния схема показана на рисунке 47, переменные назначаются всегда на выходе блока, переменная δ имеет чисто вспомогательный характер и назначена временно. u 1 s x4 2 s 1 2 f x3 δ -3 x1 Рисунок 47 89 4 s3 5 s2 x2 y Уравнения состояния и наблюдения x1 5 x2 2 x1 x 4 3x 4 x 4 f 3x 2 2 3 2 x3 2 x4 x4 3x3 x1 u y x2 0,5 x3 Очередность записи воздействий соответствует движению с выхода схемы к входу – сначала f, а затем u, при перемножении матриц соответственные коэффициенты и воздействия должны совпадать. Коэффициенты матрицы D нужно искать в уравнении выхода y(t) перед воздействиями – в данном случае их нет. 0 2 5 0 3 4 x 0 0 0 1 0 3 0 0 4 0 x 0 2 0 0 y 0 1 0,5 0 x 0 0 f 0 u 1 f 0 0 u Пример: описать переменными состояния систему (рисунок 48, а) а б Рисунок 48 Сначала рассматриваем сложный блок с переменной s в числителе, учитывая, что вектор с для него составлен единственной единицей и в вычислениях не нуждается, а переменная состояния на выходе блока имеет индекс 2: d k0 0 b1 1 0 1 b2 2 1 0 1 → 1 x2 1 x2 0 x 4 1 x 1 3 3 Затем описываем всю систему, включая в нее этот блок: x1 3 x2 x2 0 x2 1 x3 1 x3 u x1 x 4 x 1 x 1 4 x 1 x u x 2 3 2 3 1 3 y x1; и окончательно 90 0 x 1 1 y 1 0 0 0 0 1 x 1 u 1 4 1 3 0 x Пример. Составляя уравнения состояния для случая, когда в цепи обратной связи есть звено дифференцирования с s (рисунок 48, б) учитываем, что умножение на s в операторной области соответствует взятию производной во временной области. Поскольку в правой части выражения производных быть не должно, вместо производной подставляется ее значение, вычисленное ранее x1 3x1 x2 x2 2 x2 x1 x3 2 x2 3x1 x2 x3 3x1 x2 x3 x3 x1 x3 u и окончательно 0 3 1 0 A 3 1 1 ; b 0; c 1 0 0; d 0 . 1 0 1 1 4.6 Представление системы структурной схемой Как уже говорилось, система в пространстве состояний может быть представлена набором интеграторов, т.е. звеньев, осуществляющих операцию интегрирования входной величины по времени, сумматоров и блоков, воспроизводящих коэффициенты усиления в собственных и перекрестных связях. Пусть система второго порядка с одним входом и одним выходом задана уравнениями состояния и наблюдения в полном виде x1 (t ) a11 x1 (t ) a12 x2 (t ) b1u (t ) , x2 (t ) a21 x1 (t ) a22 x2 (t ) b2u (t ) , y (t ) c1 x1 (t ) c2 x2 (t ) du (t ) . Они могут быть представлены структурной схемой (рисунок 49). Очевидно, что по схеме может быть сформировано описание системы, минуя процедуру записи дифференциальных уравнений – коэффициенты прямых и обратных связей aij составят матрицу собственных коэффициентов А, остальные коэффициенты образуют матрицы b, c и d. Первый индекс коэффициентов aij соответствует номеру строки матрицы А, второй – номеру ее столбца; в то же время, как и для всякой функции передачи, j – это начало, а i – конец связи. 91 Рисунок 49 Применим эти принципы описания к системе (рисунок 50). Рисунок 50 Диагональ матрицы А содержит коэффициенты внутренних обратных связей a11, a22, a33. По переменной х1 это коэффициент -1 (корень знаменателя передаточной функции W4), по переменной х2 внутренние обратные связи отсутствуют, по переменной х3 обратная связь организуется через блоки W6 и W1, следовательно, коэффициент связи a33 будет равен -1,5*2 = -3. Описываем прямые связи (выше диагонали матрицы А): коэффициент a12 = 1 равен числителю ПФ звена W4, который обеспечивает связь между второй и первой переменными состояния, аналогичное значение имеет коэффициент a23 связи третьей переменной состояния со второй. Описываем обратные связи (ниже диагонали матрицы А): от х1 к х2 связи нет, коэффициент a31 связи х1 с х3 равен -0,5*2 = -1, коэффициент a32 связи х2 с х3 равен -3. Воздействие u(t) поступает только на переменную состояния х3 с коэффициентом 2*1 = 2, выходная величина y(t) образуется из переменных состояния х1(t) и х2(t). Окончательный вид матриц A, b, c, d: 0 1 1 0 A 0 0 1 ; b 0; c 1 1 0; d [0] . 1 3 3 2 Если теперь аналогичным образом перейти от матриц A, b, c, d к структурной схеме (рисунок 51), вид ее может не соответствовать пер- 92 воначальной структуре, однако по всем параметрам эти системы равносильны. При составлении структурной схемы по описанию выбираем число звеньев (равно порядку матрицы А), определяем корни знаменателей ПФ (s = -1 у блока с переменной х1 на выходе и s = -3 у блока с переменной х3), находим числители ПФ блоков между х2 и х1, между х3 и х2 (оба числителя равны 1). В схеме имеются две отрицательные обратные связи: единичная ООС от х1 к х3 и с коэффициентом 3 от х2 к х3. На входе системы находится блок с коэффициентом 2. Рисунок 51 Матрица А содержит корни характеристического полинома системы (собственные значения) на главной диагонали, однако не соответствует каноническому виду. Каноническая модальная матрица А должна быть диагональной, причем возможны две ее формы: первая содержит в каждой ячейке главной диагонали собственное значение, которое может быть как вещественным, так и комплексным. Сопряженные комплексные полюса занимают при этом соседние клетки диагонали. Вторая форма модальной канонической матрицы А оперирует только вещественными числами и имеет блочно-диагональную форму: действительные части комплексных сопряженных корней записываются на главной диагонали, а мнимые – в ячейках справа и слева также в виде вещественных чисел. Вид матриц А для системы с характеристическим полиномом D(s) = s3 + 2s2 + 3s + 4 (таблица 6). Таблица 6 Сопровождающая А 1 0 0 0 0 1 4 3 2 Диагональная матрица А 0 0 1,65 0 0,17 j1,55 0 0 0 0,17 j1,55 Блочно-диагональная А 0 0 1,65 0 0,17 1,55 0 1,55 0,17 Диагональная матрица А позволяет строить модель системы из независимых, соединенных параллельно простых звеньев. Пример: переход к переменным состояния разложением на простые дроби заданной передаточной функции (рисунок 52): W ( s) s2 0,5 0,5 s 4s 3 s 1 s 3 2 93 1 0 x1 x1 0,5u 0,5 x x u 0 3 0,5 x 2 3x2 0,5u ; или y 1 1 x y x1 x2 Рисунок 52 Если часть системы представлена блоком с s в числителе или неразлагаемым на простые дроби знаменателем, возможно комбинированное применение нескольких методов перехода (рисунок 53, а). а б Рисунок 53 Используя каноническую форму наблюдаемости, описываем подобный блок расширенной матрицей А (с увеличенным на единицу числом столбцов), причем в последний ее столбец вставляем вектор b описания блока. Затем заносим готовую подматрицу в полную матрицу А системы так, что индексы ячейки верхнего левого угла подматрицы совпадают с индексом переменной состояния на выходе блока (переменные состояния назначаются методом фазовых переменных). А остальную часть схемы описываем через внутренние и внешние прямые и обратные связи. Описание блока (описание с = [1 0] не требуется) 2 1 0,5 Ap ; b , 3 0 1,5 записанное в полную матрицу А системы, начиная с а11 (на выходе блока назначена переменная состояния х1). Остальные элементы матрицы А: а33 = 0 (полюс у входного блока отсутствует), а31 = -1 (есть ООС от х1 к х3), b3 = 2,5 (сигнал u поступает на вход переменной х3) 2 1 0,5 0 A 3 0 1,5 ; b 0 ; c 1 0 0 . 1 0 0 2,5 Обратный переход дает структурную схему равносильной модели (рисунок 53,б), в которой все звенья являются простыми. 94 4.7 Решение уравнения движения Преобразуем по Лапласу с учетом начальных условий матричное дифференциальное уравнение x (t ) A x(t ) b u(t ) s X( s) x(0) A X(s) b U (s) , где x(0) – вектор начальных значений переменных состояния (начальных условий). Группируя и вынося за скобки, получаем s X( s) A X(s) b U (s) x(0) , ( s 1 A) X( s) b U (s) x(0) . где 1 – единичная матрица необходимого размера. Умножая обе части на (s1 - A)-1, получили решение дифференциального уравнения для переменных состояния x(t), т.е. изменение вектора состояния при известном векторе управления и начальных условиях (внутри системы) X( s ) ( s 1 A) 1 b U ( s ) ( s 1 A) 1 x(0) . Реакция на выходе системы вычисляется с учетом матрицы с Y( s) c X( s ) c ( s 1 A) 1 b U ( s) c ( s 1 A) 1 x(0) . Дадим необходимые определения. (s1 – A) – характеристическая матрица, аналог характеристического полинома одномерной системы D(s). Ф(s) = (s1 – A)-1 – системная матрица (резольвента), называемая также передаточной матрицей или матрицей передаточных функций (МПФ) для переменных состояния. W(s) c Ô ( s) b D – реальная МПФ для назначенных входов и выходов, совпадает по виду с Ф(s) только в частном случае. – внутри системы, Ô ( s) x(0) Свободная составляющая – на ее выходах. c Ô ( s) x(0 ) – внутри системы, Ô ( s) b U( s) Вынужденная составляющая c Ô ( s) b U( s) – на ее выходах. Если система задана в наблюдаемой форме с упрощенной матрицей с, вместо вектора начальных значений переменных состояния х(0) может непосредственно использоваться вектор y(0) начальных значений рассогласования, скорости, ускорения и т. п. на выходе системы. Пример: найти при u(t) = δ(t) и начальных условиях y(0) = 1; y (0) = -1 уравнения движения системы, описанной матрицами 95 1 0 0 A ; b 1; c 1 0. 1 2 Вектор начальных условий (с учетом представления системы в наблюдаемой форме, т.е. с матрицей с = [1 0], используем значения на выходе системы) x (0) y(0) 1 x(0) 1 . x2 (0) y(0) 1 Характеристическая матрица s 0 0 1 s 1 ( s1 A) 1 2 1 s 2 . 0 s Характеристический полином (определитель характеристической матрицы) det ( s1 A) s 2 2 s 1 . Резольвента ( s1 A) 1 adj( s1 A) , где присоединенная матрица det( s1 A) T s 2 1 s 2 1 adj( s1 A) 1 s . s 1 Алгоритм вычисления присоединенной матрицы: каждый элемент исходной матрицы (s·1 – A) заменяют его алгебраическим дополнением и полученная матрица транспонируется (приложение Б). Y( s) c Ô ( s) x(0) c Ô ( s) b U( s) s 2 1 1 s 2 1 0 1 1 1 0 1 0 1 s 1 s 2 2 s 1 1 s 4 1 s 2 2s 1 1 0 1 s 2 1 2 1 s 2 1 2 s 2s 1 1 s 2 s 1 4 1 1 2 ( s 2 1) 2 4 s 2s 1 s 2s 1 s 1 4 2 ( s 1) ( s 1) 2 Заменяем по таблице соответствия изображения на оригиналы t y(t ) e 4 te t . yñâ(t ) 96 yâûí (t ) 4.8 Основные матричные функции Системная матрица (резольвента) Ф(s) = (s1–A)-1 описывает множество передаточных функций Ô11 ( s ) ... Ô1n ( s ) Ô ( s ) ... ... ... Ôij ( s ) . Ô n1 ( s ) ... Ô nn ( s ) Частная передаточная функция Фij(s) подразумевает вход сигнала на j-ую переменную состояния (точнее на место существования ее производной), а выход с i-ой переменной состояния, т.е. порядок назначения индексов такой же, как и у одномерных систем. s2 s 2s 1 1 0 A Ô ( s ) 2 1 1 2 s2 2 s 1 Рисунок 54 1 s2 2 s 1 , 2 s2 2 s 1 Это подтверждается независимым вычислением передаточных функций для системы (рисунок 54) от х2 к х1 и от х1 к х2 (начало пути на входе блока). 1 1 s ( s 2) Ô12 ( s) 2 ; 1 s 2 s 1 1 s ( s 2) 1 1 1 s ( s 2) Ô 21 ( s ) 2 . 1 s 2 s 1 1 s ( s 2) Если переменные состояния назначены классическим методом, то Ф1n(s) – главная передаточная функция без учета матриц b и с, изменяющих вид числителя. Если не было сокращения нулей и полюсов, знаменатели всех ПФ одинаковы и равны характеристическому полиному, а корни характеристического уравнения являются собственными числами (значениями) матрицы А. Многомерная система устойчива, если все собственные значения характеристической матрицы имеют отрицательную действительную часть, иначе – все корни характеристического полинома являются левыми. Вычислив характеристическое уравнение системы s1 A 0 , можно оценить ее устойчивость любым из рассмотренных в разделе 2 способов. 97 Матрицы, элементами которых являются весовые gij(t) или переходные hij(t) функции объекта, называются соответственно весовой (импульсной) g(t) и переходной h(t) матрицами. Их изображения определяют обычным способом. g(t ) G ( s) cÔ ( s )b D 1 – весовая матрица, h(t ) H( s) cÔ ( s)b D 1 1 – переходная матрица. s Матрица Ф(s) входит во все матричные уравнения движения системы, ее оригинал называется фундаментальной матрицей Ф(t, t0). Если отсчет времени начинается с нуля, т.е. t0 = 0, то матрицу обозначают просто Ф(t). Фундаментальная переходная матрица Ф(t) описывает единственное решение однородного матричного дифференциального уравнения x (t ) A x(t ) . Каждый элемент фундаментальной матрицы Фij(t) описывает процесс перехода i-ой переменной состояния во времени, если j-ая переменная состояния имеет начальное значение xj(0) = 1. 4.9 Вычисление фундаментальной матрицы Любые реакции объекта известны, если известна его фундаментальная матрица. Например, при ступенчатом воздействии на систему e t 1 0 u (t ) 1(t ); c 1 0 ; b ; Ô (t ) t 10 1 e можно сразу найти решение во временной области e t 1 0 y (t ) c Ô (t ) b u (t ) 1 0 1(t ) 10 1(t ) t 10 1 e Общее изменение во времени вектора состояния x(t) также выражается через фундаментальную матрицу x(t ) Ô (t ) x(0 ) Ô (t ) b u (t ) xñ â ( t ) xâ û í ( t ) Используют два принципа вычисления Ф(t): а) поскольку ( s1 A ) 1 e At , то Ф(t) определяют как матричную экспоненту от A∙t. 98 В первом случае для вычисления матричной экспоненты исk k t пользуют разложение в бесконечный ряд A или конечный ряд k! Ô (t ) e At n t2 nt , 1 At A ... A 2! n! 2 где n – порядок системы. Здесь не нужно знать корни характеристического уравнения системы, но снижается точность из-за ограниченности членов ряда. Во втором случае может быть использована формула Сильвестn ра e t M k , где α – собственные значения матрицы А (корни хаk i k 0 рактеристического уравнения системы), или в развернутом виде Ô (t ) e At e1t M 1 e 2t M 2 ... e nt M n . n Здесь M j ([ A] i [1]) i 1 j i n ( j i ) i 1 j i – все разности для других корней, – все разности этого корня с другими. Особенности метода – коэффициенты сразу получаются в матричном виде, но обязательно нужно знать корни характеристического уравнения. Приведенная формула пригодна для простых действительных корней характеристического уравнения, для кратных корней используется более сложная формула. б) Ф(t) вычисляется как обратное преобразование Лапласа от системной матрицы Ф(s), или Ô (t ) L1{( s1 A) 1} . Здесь также нужно обязательно знать корни, требуется многократное поэлементное преобразование, но зато способ пригоден для любых корней (комплексных, кратных, простых). Пример: определим Ф(t) методом Сильвестра для системы 1 0 x x. 3 4 Вычисляем характеристический полином, находим его корни 99 s1 A 1 s 3 s4 s2 4s 3 ; s1 = –1; s2 = –3. Вычисляем матрицы коэффициентов при собственных модах системы 1 1 0 0 3 4 30 1 3 1 1 1,5 0,5 M 1 3 1 ; 1 (3) 2 1,5 0,5 M 3 1 1 0 0 3 4 10 1 1 1 1 0,5 0,5 ; 1,5 3 (1) 3 3 2 1,5 0,5 t 0,5 0,5 3t 1,5 Ô (t ) M 1 e t M 3 e 3t e . e 1,5 1,5 1,5 0,5 Пример: определение Ф(t) с помощью обратного преобразования Лапласа. 1 0 x. 3 4 Система x Вычисляем характеристический полином и находим корни s 1 2 s1 A s 4 s 3 ; s1 = –1; s2 = –3. 3 s 4 1 s4 2 2 s 4 1 ; Ô ( s) s 4 s 3 s 4 s 3 . adj( s1 A) 3 s 3 s 2 s 4s 3 s2 4s 3 Общий вид разложения на простые дроби Ôij N ij ( s ) D( s) k1 k N (s) 2 . s 1 s 3 ( s 1)( s 3) Находим коэффициенты числителей простых дробей: Ф11 (s) N11 (s) s 4; Ф12 (s) N12 (s) 1; Ф21 (s) N 21 (s) 3; Ф22 (s) N 22 (s) s; k1 = 1,5; k2 = -0,5 k1 = 0,5; k2 = -0,5 k1 = -1,5; k2 = 1,5 k1 = -0,5; k2 = 1,5, откуда получаем вид системной и фундаментальной матриц 100 0,5 1,5 s 1 s 3 Ô ( s) 1,5 1,5 s 1 s 3 0,5 0,5 s 1 s 3 0,5 1,5 ; s 1 s 3 1,5e t 0,5e 3t Ô (t ) t 3t 1,5e 1,5e 0,5e t 0,5e 3t . 0,5e t 1,5e 3t Найдем реакцию на начальные условия х1(0) = 2, х2(0) = 0, если с=[1 0]. 2 yñâ(t ) c Ô (t ) x(0) 1 0Ô (t ) 3et e3t . 0 4.10 Управляемость и наблюдаемость систем Описание систем одним ОДУ по методу вход/выход имеет ограничения, связанные с понятиями управляемости и наблюдаемости. Рассмотрим систему (рисунок 55). 1 s 1 x1 1 -1 x2 1 Ошибка! Закладка не определена. s 1 1 1 s2 u x3 y 1 Рисунок 55 Она описывается уравнениями состояния и наблюдения x1 x 2 x 3 y x1 x2 u 2 x3 u x1 x 3 . Вычисленная обычным образом передаточная функция системы соответствует первому порядку Wyu(s) = 1/(s+2), хотя на самом деле имеет место система третьего порядка. Физически видно, что воздействие u(t) не влияет на значение x1(t), т.е. система не управляема по x1. В свою очередь, на выходе y(t) не наблюдается (не измеряется) переменная x2(t), т.е. система не наблюдается по x2. В ПФ отсутствуют сведения по x1 и x2. 101 Отсюда следует, что передаточная функция W(s) и матрица передаточных функций W(s) c Ô ( s) b D описывают только управляемую и наблюдаемую часть системы. Управляемость систем управления. Система полностью управляема, если существует воздействие u(t), переводящее ее из любого начального состояния x(0) в заданное конечное x(t) за ограниченный интервал времени t. Математический признак управляемости (теорема Калмана). Для управляемости системы необходимо и достаточно, чтобы матрица управляемости вида Q=[B| AB| A2B|…|An-1B] имела ранг, равный n. При управляемости системы говорят также, что пара (А, В) управляема. Ранг матрицы (Rank) равен порядку наибольшего минора, отличного от нуля. Матрица Q составляется присоединением справа к матрице В произведения матриц АВ, затем произведения А(АВ) и т.д. Размерность матрицы Q равна (n x nr), где r – число входов. Если матрица Q имеет ранг n уже при некотором ν < n, т.е. RankQ=Rank[B; AB; …; Aν-1B] = n, то наименьшее значение ν, при котором матрица управляемости имеет ранг n, называется индексом управляемости. Если ранг матрицы B (обозначим его RB) не равен единице, то вычисление матрицы Q можно закончить досрочно, используя при вычислениях формулу Q=[B; AB; …; An-RbB]. Возможны три состояния системы: RankQ = n – система полностью управляема, RankQ = 0 – система полностью неуправляема, и состояние 0 < RankQ < n – система частично управляема (порядок управляемости равен RankQ). Пример: оценить управляемость системы (достаточно иметь пару А и b). dx1 dt x2 0 Система: . Находим A dx2 x u 1 1 dt 0 Определитель матрицы управляемости Q 1 1 0 1 ; b ; Ab . 0 1 0 1 0 1 0 , следовательно, ранг матрицы равен 2, что равно порядку системы n = 2, система полностью управляема. Пример: оценить управляемость системы (рисунок 55). 102 x 1 x1 Система: x 2 x 2 u Находим: x 2 x u 3 3 0 1 0 0 0 0 A 0 1 0 ; b 1 ; Ab 1 ; A Ab 1 0 0 2 1 2 4 0 0 0 1 1 Q 1 1 1 ; т.к. 3 0 , 2 10, 1 2 1 2 4 то RankQ = 2 ≠ n. Система частично управляема, порядок управляемости равен двум. Наблюдаемость систем управления. Свойство наблюдаемости дуально (двойственно) свойству управляемости. Система полностью наблюдаема, если по результатам наблюдения (измерения) выхода y(t) за ограниченный интервал времени можно оценить (восстановить) начальные значения всех переменных состояния. Математический признак наблюдаемости: для полной наблюдаемости системы необходимо и достаточно, чтобы матрица наблюдаемости N = [cT; ATcT; (AT)2сT; …; (AT)n-1cT] имела ранг, равный порядку системы n. Символ Т означает транспонирование или перевод вектора-строки в вектор-столбец. Говорят также, что пара (А, с) – наблюдаема. Если матрица N имеет полный ранг при некотором μ<n, т.е RankN = Rank[cT; ATcT; …; (AT)µ-1cT] = n, то наименьшее значение μ, при котором ранг матрицы N равен n, называется индексом наблюдаемости. Если RankN = n, система полностью наблюдаема, при RankN = 0 система полностью ненаблюдаема, при 0 < RankN < n система частично наблюдаема, порядок наблюдаемости равен RankN. Если ранг матрицы С (обозначим его RC) больше единицы, то число вычислений можно сократить, пользуясь формулой N = [cT; ATcT; (AT)2сT; …; (AT)n-RccT]. Пример: оценить наблюдаемость системы (достаточно иметь пару А и с) 103 dx1 dt x2 Система dx2 , откуда u dt y x1 1 0 N cT | A T cT ; 0 1 0 A 0 0 AT 1 N 1 ; c 1 0 0 0 T 1 T T 0 ; c ; A c 0 0 1 1 0 0 1 10. RankN = 2 равен порядку системы n = 2, поэтому система полностью наблюдаема. Пример: оценить наблюдаемость системы. dx1 0 3 dt 3 x2 A ; c 0 1,5 0 0 Система dx2 , откуда u 0 0 T 0 T T 0 dt AT ; c 1,5 ; A c 0 3 0 y x2 0 0 N cT | AT cT ; Δ2 = 0; Δ1 = 1,5. 1,5 0 RankN=1 – система частично наблюдаема, порядок наблюдаемости равен 1. Неуправляемость или ненаблюдаемость системы может проявляться из-за сокращения нулей и полюсов, например, при объединении подсистем с близкими корнями (рисунок 56), либо при совпадении корней входного воздействия U(s) и системы W(s). Пусть W1 ( s) Рисунок 56 s 1 s 1 ; W2 ( s) . ( s 2)( s 1) ( s 1)( s 3) Тогда происходит сокращение W ( s) ( s 1)( s 1) . ( s 2)( s 1)( s 1)( s 3) В реальных системах играет роль порядок прохождения сигнала по звеньям: если ближе ко входу сокращаемый ноль, а дальше полюс – имеет место неуправляемость, при обратном порядке – ненаблюдаемость. Показанная система неуправляема по корню +1 и ненаблюдаема по корню -1. Увеличение числа входов/выходов, либо изменение места их приложения позволяет улучшить свойства управляемости (наблюдаемости). 104 4.11 Наблюдатели В реальных системах регулирования часть переменных либо невозможно измерить вообще, либо они измеряются с большими помехами. Отсюда возникает задача оценивания всех переменных x(t) по имеющейся неполной и неточной информации о состоянии многомерного объекта. Для решения этой задачи в контур управления включают специальные устройства оценивания – наблюдатели (рисунок 57). Наблюдателем называется компенсирующее устройство в цепи ОС системы, позволяющее получить информацию о неизмеряемых переменных соРисунок 57 стояния. Используют наблюдатели полного порядка n, равного порядку системы, и неполного n – l, где l – число переменных состояния, доступных для измерения. Наблюдатель состояния формируется на базе модели объекта регулирования. Уравнения объекта x A x B u ; y C x , уравнения наблюдателя x̂ A xˆ B u uí ; yˆ C xˆ , где yˆ (t ) – текущее значение оценки выходной переменной y(t); xˆ (t ) – текущее значение оценки вектора состояния x(t). Оценки представляют собой величины, аналогичные имеющимся у объекта-оригинала, однако вырабатываемые его моделью. Поведение модели корректируется за счет обратных связей по выходной ошибке (невязке) ~y y yˆ с помощью специального векторного входного воздействия наблюдателя uн, при точном совпадении состояний оригинала и модели невязка стремится к нулю. Вектор ошибок наблюдения (вектор невязок) ~ x x xˆ характеризует отклонение состояния модели от состояния объекта регулирования. Уравнения ошибок наблюдения имеют вид ~ x A ~ x uí ; ~ y C~ x. Задача синтеза наблюдателя сводится к выбору входного воздействия uн, которое обеспечивало бы устойчивость модели, т.е. устранение с течением времени отклонений ~ x и ~y . Вектор uн формируy k í c~ x , где kн – векторется с помощью обратных связей u í k í ~ столбец коэффициентов 105 k í ,n k í ,n 1 kí . ... k1 После подстановки ~ x A~ x kí ~ y (A k í c)~ x Aí ~ x , где Ан – матрица наблюдателя (замкнутой системы оценивания). Устойчивость положения равновесия ~ x 0 модели и заданные динамические показатели качества наблюдателя достигаются за счет соответствующего выбора корней характеристического уравнения s1 A í 0 наблюдателя. Если система полностью наблюдаема, то существует единственная матрица обратной связи kн, обеспечивающая получение заданных значений корней характеристического полинома наблюдателя. Общий вид наблюдателя полного порядка для системы второго порядка с ОДУ р2y + a1py + a2y = bu представлен на рисунке 58. Рисунок 58 Специальное воздействие, улучшающее динамику наблюдателя y k u í 1 k1 ~ u í ~ 1 ( y yˆ ) . u í 2 k 2 y k 2 x̂1 xˆ 2 a1 xˆ1 k1 ( y xˆ1 ) (a1 k1 ) xˆ1 xˆ 2 k 2 y x̂2 a2 xˆ1 k2 ( y xˆ1 ) bu (a2 k2 ) xˆ1 bu (a1 k1 ) 1 Aí ( a2 k 2 ) 0 Из характеристического уравнения 106 s1 Aí s 2 (a1 k1 )s (a2 k2 ) s 2 a1í s a2 í 0 очевидно влияние коэффициентов обратной связи по переменным состояния наблюдателя на его характеристики. Практически используются такие способы построения наблюдателей состояния, как способ параллельной модели и фильтр Калмана. Способ параллельной модели может использоваться для устойчивых линейных стационарных объектов. При этом структурная схема (уравнение) наблюдателя полностью повторяет структуру объекта с нормированной по старшему коэффициенту передаточной функцией в каноническом управляемом представлении (рисунок 59), а специальное воздействие uн и блок WКУ(s) не используются, например W ( s) bí k k T2 T 2 s 2 2Ts 1 s 2 2s / T 1 / T 2 s 2 a1í s a2 í Рисунок 59 Если объект неустойчив, либо требуется ускорить процесс оценки его переменных состояния, используют фильтр Калмана, который дополнительно содержит стабилизирующую добавку WКУ(s), формирующую специальное воздействие uн. При разных начальных услоy 0 , стабилизирующая добавка усковиях объекта и наблюдателя ~ ряет процесс выравнивания y и оценки ŷ . Вид характеристического уравнения наблюдателя T2s2+2ξTs+[kWКУ(s)+1]=0 для этого случая подтверждает влияние параметров добавочного звена на устойчивость и динамику наблюдателя. Следует заметить, что использование наблюдателя практически вдвое увеличивает общий порядок системы. Если объект содержит нули, наблюдатель в виде параллельной модели для него строится по схеме, представленной на рисунке 43. 107 4.12 Проектирование модального регулятора При создании замкнутой системы регулирования к объекту добавляется регулятор, что изменяет структурную схему (рисунок 60) Рисунок 60 и вид уравнений состояния (добавляется управляющее воздействие u) x A x b u; y c x; u K (r k Òx) . Знак транспонирования указывает на то, что k – вектор-строка. Если обратная связь производится только по x1 (выходу), решение эквивалентно выбору корректирующего устройства в цепи ОС системы. Матрицы коэффициентов замкнутой системы могут быть вычислены по параметрам разомкнутой системы (объекта) следующим образом: b = Kbp; d = Kdp; A = Ap - Kbpk = Ap - bk; c = cp – Kdpk = cp – dk. Наиболее просто в пространстве состояний реализуется модальный регулятор – пропорциональный или П-регулятор с параметрами, выбираемыми единственным образом по желаемому виду характеристического полинома замкнутой системы регулирования. К параметрам регулятора относятся матрица коэффициентов k (вектор-строка), описывающая обратные связи по переменным состояния х1, …, хn, и коэффициент усиления К в блоке, устанавливаемом либо после, либо до главного сумматора (на выходе задатчика), тогда r(t) = r0(t)∙K. Для получения единственного решения обычно выбирают коэффициент передачи К из условия Kbm/an = 1 нулевой ошибки на выходе системы в установившемся состоянии при ступенчатом входном сигнале, а коэффициенты матрицы обратных связей – по формуле ki = (ai – aio)/Kb = (ai – aio)/an. Здесь b = bm – коэффициент числителя передаточной функции объекта, ai0 – действительные коэффициенты ее знаменателя, ai – коэффициенты желаемого характеристического полинома, удовлетворяющего заданным требованиям по устойчивости и качеству регулирования. Эти зависимости справедливы только в том случае, если описание системы приведено к каноническому виду. Коэффициент К и матрица k образуют произведение и взаимозависимы. Если требуется выбрать К из других соображений, а не из величины установившейся ошибки, изменится и значение элементов 108 k, причем во сколько раз увеличится К, во столько же раз уменьшится k и возрастет числитель главной передаточной функции системы. Для случая, когда блок с коэффициентом К вынесен из контура обратной связи, взаимосвязь его с матрицей k отсутствует и они могут вычисляться независимо. Желаемый характеристический полином замкнутой системы может быть сформирован самостоятельно, либо заимствован из числа типовых. В частности, стандартные переходные функции обеспечиваются использованием в системе типовых характеристических полиномов Баттерворта, Ньютона и т.п. [11]. Так, нормированный полином Баттерворта второго порядка вида s2 + 1,41s + 1 обеспечивает время регулирования 2,9 с и перерегулирование 4,5 %; нормированный полином Ньютона вида s2 + 2s + 1 обеспечивает отсутствие перерегулирования при времени регулирования 4,8 с. Не следует, однако, забывать, что указанные характеристики гарантируются только при отсутствии у системы нулей. Пример: ПФ объекта регулирования после нормирования имеет вид W ( s) 100 , s 3 20,5 s 2 110s 50 заданные показатели качества: время регулирования 6 с, перерегулирование 0,02, выбрать параметры модального регулятора. Исходя из требований к процессу регулирования замкнутой системы, выбираем корни s1, s2 ... sn и определяем эталонный (желаемый) характеристический полином с коэффициентами a1 ... an. Характеристический полином системы третьего порядка будет содержать один действительный корень и два комплексных сопряженных, по которым и будем формировать показатели качества регулирования, полагая их доминирующими. При заданном времени регулирования tрег = 6 с степень устойчивости для ошибки Δ = 5% равна αmin = 3/6 = 0,5, отсюда действительная часть комплексного корня будет равна -0,5. Действительный корень принимаем в 10 раз большим, т.е. -5, чтобы исключить его влияние на переходный процесс. По заданной величине перерегулирования σ = 0,02 вычисляем степень колебательности μ = -π/ln(σ) = = -3,1415926/ln(0,02) = 0,803, после чего можно вычислить мнимую часть комплексного корня β = μ* αmin = 0,803*0,5 = 0,401. По значениям корней -5 и -0,5 ± j0,401 находим вид желаемого характеристического полинома D(s) (s 5)[( s 0,5) 2 0,4012 ] s 3 6s 2 5,41s 2,05 . Из условия нулевой ошибки регулирования значение коэффициента усиления регулятора K = an/b = 2,05/100 = 0,0205. Значения коэффициентов обратной связи по переменным состояния равны 109 a1 a10 a1 a10 6 20,5 7,0732, Kb a3 2,05 a a20 a2 a20 5,41 110 k oc, 2 2 51,0195, Kb a3 2,05 a a30 a3 a30 2,05 50 k oc,3 3 23,3902. Kb a3 2,05 k oc,1 Замкнутая система регулирования (рисунок 61) содержит объект управления на выходе U(t), наблюдатель в форме, соответствующей каноническому управляемому представлению, П-регулятор с коэффициентом усиления К и обратными связями koc по переменным состояния, формируемым наблюдателем. Рисунок 61 Передаточная функция замкнутой системы регулирования равна 1 s3 W ( s) 20,5 110 50 7 ,0732 51,0195 23,3902 1 2 3 0,0205 100 s s s s s2 s3 0,0205 100 2,05 . s 6 s 5,41s 2,05 3 2 Проверка подтверждает, что установившаяся ошибка отсутствует, так как коэффициент передачи в установившемся режиме равен 2,05/2,05 = 1, а полученный характеристический полином системы регулирования равен желаемому. Если для измерения доступна только одна величина на выходе y(t), для создания обратных связей по переменным состояния устанавливают наблюдатель, либо в цепи главной обратной связи системы используют ПД-регулятор с эквивалентной передаточной функцией Heq(s) H eq ( s) koc,1s 2 koc, 2 s koc,3 N ( s) (7,0732s 2 51,0195s 23,3902) / 100 . 110 4.13 Преобразования подобия Проектирование модального регулятора производится только для объекта, заданного в канонической форме управляемости, тогда как в общем случае система может быть описана произвольными матрицами A, b, c, d. Отсюда следует необходимость уметь переходить от одной формы к другой – поскольку все эти системы подобные, такой переход называется преобразованием подобия или базиса. Введем новый вектор состояния той же размерности, что и исходный вектор, т.е. x(t)=P-1h(t), где Р – матрица преобразования базиса или просто матрица преобразования. Тогда подстановка в стандартное уравнение состояния дает P 1h (t ) AP 1h(t ) Bu(t ) , а, умножив обе части уравнения на матрицу Р, получим h (t ) PAP 1h(t ) PBu (t ) . Новая система уравнений состояния и наблюдения объекта имеет вид h (t ) PAP 1h(t ) PBu (t ) y (t ) CP 1h(t ) Du(t ) откуда следует, что матрицы коэффициентов новой системы равны Ah=PAP-1, Bh=PB, Ch=P-1 (матрица D, при ее наличии, не претерпевает изменений, поскольку не связана с вектором состояний). Задаваясь произвольной матрицей Р необходимого размера, можно получить бесконечное множество описаний одной и той же системы в пространстве состояний. Однако при любых преобразованиях должны выполняться два важных условия: 1) исходная и преобразованная система должны иметь одинаковые собственные значения (характеристические многочлены и их корни); 2) преобразование базиса не меняет передаточную функцию системы. Первое условие мы используем далее для вычисления матрицы преобразования Р, второе может применяться для проверки правильности преобразования. Рассмотрим приведение к канонической управляемой форме. Доказано, что матрица преобразования в этом случае равна отношению матрицы управляемости новой системы к матрице управляемости исходной, т.е. P = QcQ-1. Проблема состоит в том, где взять параметры новой системы, однако для канонической формы управляемости эта проблема решается достаточно просто – вид матрицы А (сопровождающей или матрицы Фробениуса) полностью определяется характеристическим полиномом, вид матрицы В также формализован. Таким образом, необходимо найти характеристический полином системы, записать матрицы Ас и bс системы в канонической управляемой фор- 111 ме, вычислить матрицы управляемости обеих систем и по ним матрицу преобразования Р, с помощью которой осуществляется переход. Процедура преобразования к канонической наблюдаемой форме аналогична и отличается лишь тем, что используются матрицы наблюдаемости, причем матрица преобразования базиса вычисляется по отношению матрицы наблюдаемости исходной системы к матрице наблюдаемости новой P = NNо-1. Обратный переход, т.е. возвращение к исходной системе, например, после выбора параметров модального регулятора, во всех случаях осуществляется применением матрицы Р в обратном порядке, т.е. A = P-1AhP, B = P-1Bh, C = ChP, k = khP, где kh – матрица обратных связей замкнутой системы по переменным состояния. Рассмотрим выбор параметров модального регулятора с преобразованием объекта к канонической форме управляемости для случая u(t) = K∙r(t) - k∙x(t), когда коэффициент К вынесен из контура обратных связей по переменным состояния и включен в задатчик (рисунок 62). Такое построение регулятора требует меньше вычислений благодаря независимости коэффициента К и матрицы k друг от друга. Рисунок 62 Преобразуемый объект третьего порядка описывается системой уравнений 1 1 0 0 A 0 0 1; b 0; c 1 1 0 . 0 3 0 1 Характеристический полином объекта равен D(s)= s3+s2+3s+3, матрица управляемости 0 0 1 Q 0 1 0 . 1 0 3 112 Используя вычисленный характеристический многочлен, записываем сопровождающую матрицу Ас, затем для пары (Ас, bc) найдем матрицу управляемости Qс новой системы и матрицу преобразования Р=QcQ-1 1 0 1 0 0 0 Ac 0 0 1 ; Q c 0 1 1 ; 3 3 1 1 1 2 1 0 0 P 1 1 0 . 1 1 1 Применяя формулы Ас=РАР-1, bc=Pb, cc=cP-1, найдем описание той же системы в канонической форме управляемости (учитывая, что две матрицы были нам уже известны, оставалось вычислить лишь сс) 1 0 0 0 A c 0 0 1 ; b c 0; cc 2 1 0 . 3 3 1 1 Предположим, что необходимо спроектировать модальный регулятор при требовании, чтобы система в замкнутом состоянии имела характеристический полином D(s) = s3 + 4s2 + 6s + 4. Отдельно находим коэффициент усиления регулятора К = a3c/cc(1) = 4/2 = 2 из условия равенства свободных членов числителя и знаменателя ПФ замкнутой системы, т.е. нулевой установившейся ошибки (если переменные состояния назначены в схеме не методом фазовых переменных, т.е. не с конца, индексы коэффициентов могут меняться, однако в любом случае это должно быть отношение свободных членов числителя и знаменателя передаточной функции замкнутой системы, соответствующих индексу переменной состояния, назначенной на выходе). Далее записываем матрицу Ас замкнутой системы согласно требованиям к проектируемой установке и преобразовываем ее с помощью матрицы Р к исходной схеме (матрицы b и с не изменялись и поэтому не нуждаются в преобразовании) 1 0 0 0 1 1 A c 0 0 1 ; A P 1A c P 0 0 1 . 4 6 4 1 3 3 Сравнение первоначальной и вновь вычисленной матриц А обнаруживает несовпадение элементов a31 и а33, что позволяет вычислить необходимые значения коэффициентов матрицы обратных связей регулятора по переменным состояния k3= 0-(-1) =1; k2=0; k1= 0-(-3) = 3 (напомним, что для фазовых переменных коэффициенты записывают- 113 ся в обратном порядке). Отрицательная обратная связь организуется посредством инвертирующего входа сумматора (рисунок 38). Мы использовали в данном случае нестандартный подход, а обычный путь при проектировании регулятора с вынесенным на выход задатчика блоком К заключается в вычислении коэффициентов матрицы k обратных связей по переменным состояния замкнутой системы, как разницы между значениями коэффициентов нового и старого характеристического полиномов, т. е. kc3=ac3 – a3=4-3=1; kc2=6-3=3; kc1=4-1=3 и ее обратном преобразовании с помощью матрицы Р 1 0 0 k k c P 1 3 3 1 1 0 1 0 3 . 1 1 1 114 5 Синтез систем автоматического регулирования 5.1 Функциональная и структурная схемы При разработке систем регулирования используют различные графические модели: графы, полные (принципиальные) схемы, функциональные структурные схемы, алгоритмические структурные схемы. Принципиальная схема отображает конструктивные особенности системы с необходимой степенью детализации и позволяет получить представление о принципах работы. Например, принципиальная схема САР напряжения генератора постоянного тока (рисунок 63) включает генератор постоянного тока G с обмоткой возбуждения ОВг, электромашинный усилитель ЭМУ с обмотками опорной и возбуждения ОВэ, резистор задатчика Rз, включенный на образцовое напряжение Uo, и резистор Rд датчика в цепи обратной связи, включенный на выходное напряжение генератора Uвых. Рисунок 63 Источники напряжения в цепи обратной связи включены встречно, что соответствует сумматору с инвертирующим входом, поэтому напряжение на обмотке возбуждения ОВэ равно разности U k çU 0 käU âûõ . В зависимости от знака, это напряжение добавляется к опорному или вычитается из него, соответственно изменяются напряжение Uв на выходе ЭМУ и Uвых на выходе генератора относительно номинального значения, устанавливаемого величиной опорного напряжения. Функциональная (блочная) схема отображает систему регулирования в виде совокупности блоков, выделенных по выполняемым в процессе регулирования функциям. В разных областях техники используется разный набор типовых функциональных блоков. Для систем регулирования это чаще всего: ОУ (ОР) – объект регулирования; ИП – измерительный преобразователь (датчик), устройство для измерения контролируемых величин и преобразования их в необходимые по виду и значению сигналы; 115 ЗУ – задающее устройство (задатчик), в простейшем случае представляет собой потенциометр, в более сложном, например, формирует образцовую функцию по заданной программе; СУ – сравнивающее устройство (сумматор), приспособление для выделения разности сигналов, может быть реализовано способом соединения разных блоков системы, например, встречно-последовательным; _У – усилительное устройство, обычно в начале обозначения указывается особенность конструкции усилителя, например, МУ (магнитный), ЭМУ (электромашинный), ЭУ (электронный); КУ – корректирующее устройство, используемое для улучшения устойчивости и качества системы; ИУ – исполнительное устройство, чаще всего контактор, клапан; РО – регулирующий орган, например, задвижка, вентиль с электромеханическим приводом, в отличие от ИУ осуществляет изменение регулируемой величины плавно. Эти элементы могут объединяться, отсутствовать и во многих случаях не совпадают с конструктивным делением системы. Например, функциональная схема той же САР напряжения генератора постоянного тока (рисунок 64) будет содержать следующие элементы. Рисунок 64 Структурная схема отображает САР в виде совокупности типовых динамических звеньев, соответствующих реализуемым в разных частях системы уравнениям статики или динамики при стандартных начальных условиях и возмущениях (рисунок 65). Рисунок 65 По сути, это графическая запись математических формул. Разные по конструкции и назначению элементы могут характеризоваться одинаковыми уравнениями (звеньями). Число звеньев и конструктив- 116 ных элементов в системе не всегда совпадает, например, один конструктивный элемент может быть представлен несколькими уравнениями (звеньями), соединенными определенным образом. Характер уравнений вытекает из характера конструктивного элемента и его технических данных. Например, электрический двигатель постоянного тока с независимым возбуждением, входным воздействием которого является ЭДС еи от источника регулируемого напряжения, а выходной величиной – частота вращения вала n (об/с), описывается передаточной функцией апериодического звена второго порядка W ( s) n( s) / eè ( s) kä /(Tì Tÿ s 2 Tì s 1) . Здесь kд = 1/сеФ – коэффициент передачи двигателя по управляющему воздействию, (об/с)/В; Тя = Lя/rя – электромагнитная постоянная времени якорной цепи, с; Тм = 2πJrя/сесмФ2 – электромеханическая постоянная времени, с; J – динамический момент инерции вращающихся масс (якоря, редуктора, рабочей машины), приведенных к валу двигателя, кг·м2; rя и Lя – соответственно активное сопротивление и индуктивность цепи якоря, включая выходные цепи источника напряжения, Ом и Гн; се и см – конструктивные постоянные двигателя, В·Вб-1/(об/с), Н·м/(А·Вб); Ф – магнитный поток возбуждения, Вб. Для большинства типовых элементов САР параметры и правила их приведения к типовым передаточным функциям указаны в справочниках. 5.2 Типовые динамические звенья В структурной схеме реальные элементы заменяются типовыми звеньями, характеризующими динамику процесса (линейные звенья) или его статику (нелинейные звенья). Элементарное звено должно: - иметь только одну зависимую переменную, достаточную для полного описания звена; - иметь дифференциальное уравнение не выше второго порядка; - обладать детектирующими свойствами (однонаправленностью); - не менять свойств при подключении других звеньев. Передаточную функцию типовых звеньев принято нормировать по свободному члену, тогда общий коэффициент k = bm/an сразу равен коэффициенту усиления в установившемся режиме. К типовым динамическим звеньям обычно относят усилительное 1, интегрирующее 2, инерционное 3, звено второго порядка 4 (апериодическое, колебательное, консервативное), дифференцирующее 5, форсирующее звено первого и второго порядка 6, звено чистого запаздывания 7. В передаточной функции системы они занимают следующее место 117 s ( 0 s 1)( 12 s 2 s 1) s W ( s) k e s (T0 s 1)(T12 s T2 s 1) 1 5 2 3 6 4 6 7 Типовые звенья являются не только устойчивыми, но и минимально-фазовыми – это означает, что как в знаменателе, так и в числителе у них отсутствуют корни с положительной действительной частью. Минимально-фазовые звенья имеют при одинаковых с иными звеньями АЧХ наименьшие по модулю фазовые характеристики (минимальную конфигурацию годографа). Между амплитудной и фазовой характеристиками таких звеньев имеется однозначное соответствие, поэтому достаточно иметь АЧХ, а ФЧХ строится по шаблону. Усилительное звено (пропорциональное, безинерционное) – это звено, выходная величина которого в любой момент времени пропорциональна входной величине. Возможно как усиление (k > 1), так и ослабление (k < 1) сигнала. Дифференциальное уравнение Передаточная функция Комплексный коэффициент передачи y=kx W(s)=k W(jω)=k Переходная характеристика АФЧХ ЛЧХ h(t) jIm L 20lgk k k Re t 0 lgω Примеры реализации – делитель на резисторах, рычажная передача, сопряженная пара шестерен, инвертирующий усилитель. Интегрирующее звено (астатическое, нейтральное) – это звено, скорость изменения выходной величины которого пропорциональна входной величине. Можно сказать иначе – выходная величина пропорциональна интегралу входной величины. Дифференциальное уравнение dy 1 kx или y x dt dt Tи 0 Передаточная функция W(s) 1 k или W(s) s Tи s 118 Комплексный коэффициент передачи W(j ) -j k Переходная характеристика АФЧХ h(t) ЛЧХ L jIm 20lgk Re 0 -90о -90о t lgω 0 На всех частотах интегратор создает отставание выходного сигнала от входного на 90о, он является фильтром низких частот (ФНЧ). Примеры реализации – емкость, наполняемая насосом с постоянной производительностью, интегратор на операционных усилителях. Инерционное звено (апериодическое звено первого порядка) – это звено, выходная величина которого при ступенчатом входном воздействии стремится к установившемуся значению по экспоненте. Дифференциальное уравнение T Передаточная функция dy y kx dt W(s) Переходная характеристика k Ts 1 k kT j 1 ω 2T 2 1 ω 2T 2 ЛЧХ L jIm k Re k/2 k t -k/2 o 45 3 дБ 20lgk 0,63 3T W(j ) АФЧХ h(t) T Комплексный коэффициент передачи lgω 0 -90о Является типичным фильтром низких частот (ФНЧ). При увеличении времени исследования t>>T инерционное звено приобретает свойства усилительного звена, а при уменьшении t<<T – интегрирующего. Примеры реализации – нагревательная печь, лампа накаливания, термопара, электродвигатель, RC-делитель. Постоянная времени T численно равна длине отрезка, отсекаемого на линии установившегося значения касательной, восстановленной к характеристике из начала координат. Иной способ определения – это время достижения 0,63 от установившегося значения. Время установления (завершения переходного процесса) инерционного звена равно примерно 3Т. 119 Звено второго порядка – этим именем описывается несколько звеньев, конкретный тип звена определяется характером корней квадратного трехчлена, вид дифференциального уравнения общий для всех звеньев второго порядка. Апериодическое звено – это звено второго порядка, реакция которого при ступенчатом входном воздействии образуется двумя противопоставленными экспонентами. Оно имеет место при выполнении условия a12 ≥ 4a0, т.е. при чисто вещественных корнях характеристического уравнения D(s)=a0s2+a1s+1=0, нормированного по свободному члену. Дифференциальное уравнение a0 y a1 y y kx Переходная характеристика Передаточная Комплексный функция коэффициент передачи k k , W(s) 2 2 или A( ) 2 2 2 2 T2 s T1 s 1 (T3 1)(T4 1) k W(s) T3 s 1T4 s 1 ( ) arctgT3 arctgT4 АФЧХ ЛЧХ L h(t) 20lgk jIm Т1 k Re 0 k Т4 t ω=1/T2 lgω -180o Как правило, постоянной Т4 называют ту из двух постоянных времени, значение которой меньше, т.е. выполняется условие Т4<<T3. Между постоянными времени выполняются соотношения T1=T3+T4, T22=T3T4. Критический случай имеет место при кратных корнях T3=T4. Реализация соответствует двум последовательно соединенным инерционным звеньям. Характерная особенность АФЧХ – модуль вектора постоянно убывает при увеличении частоты от 0 до бесконечности. Характерная особенность ЛАЧХ – два перелома вниз на частотах сопряжения с отклонением каждый раз на -20 дБ/дек. Колебательное звено – это звено, выходная величина которого при ступенчатом входном воздействии стремится к новому установившемуся значению, совершая относительно него экспоненциально затухающие колебания. Звено имеет место при условии 0<a12<4a0, соответствующем комплексным сопряженным корням характеристического уравнения. 120 Дифференциальное уравнение Передаточная функция W(s) a0 y a1 y y kx или kω02 W(s) ( s α)2 ω02 Переходная характеристика h(t) k T s 2Ts 1 2 2 ( ) arctg АФЧХ T0 L jIm a2 20lgk k t 2T 1 T 2 2 ЛЧХ k a1 Комплексный коэффициент передачи k A( ) , (1 T 2 2 ) 2 (2T ) 2 ωc=1/T2 Re 0 -180o lgω lg(ωc) Здесь – показатель затухания (демпфирования), для колебательного звена лежит в пределах 0 << 1, для апериодического звена второго порядка 1, = /T = 0 = 1/(2T0)·ln(a2/a1).– действительная часть корня характеристического уравнения, 0 – собственная частота колебаний. Выброс (пик) ЛАЧХ h наблюдается на частоте сопряжения с = 2 02 при ξ < 0,707. Уклон в конце ЛАЧХ равен –40 дБ/дек. Без резонанса разница между реальной и асимптотической ЛАЧХ равна минус 6 дБ, большее значение уже говорит о наличии резонанса. Чем меньше , тем выпуклей АФЧХ, тем выше пик ЛАЧХ, тем круче ЛФЧХ в точке резонанса. Примеры реализации – физический маятник, защемленная балка, вибрирующий контакт, качания синхронного электродвигателя в процессе синхронизации с источником питания и т.п. Для быстрого распознавания типа звена – колебательное или апериодическое второго порядка, проверяются условия: при записи знаменателя в общем виде a0s2+a1s+1 звено колебательное, если a12<4a0 или показатель затухания ξ = a1/(2 a0 )<1, для записи в виде T22s2+T1s+1 колебательному звену соответствует соотношение T1<2T2. Рост постоянной времени Т2 увеличивает размах колебаний, рост Т1 уменьшает (демпфирует) их. Консервативное звено (идеальное колебательное) – это звено, выходная величина которого при ступенчатом входном воздействии совершает колебания с постоянной амплитудой. Оно имеет место при 121 условии a1 = 0 ( = 0), т.е. при чисто мнимых корнях характеристического уравнения. Дифференциальное уравнение Передаточная функция k или T s 1 kω 2 W(s) 2 0 2 s ω0 W(s) a 0 y a 1 y y kx Переходная характеристика 2 2 Комплексный коэффициент передачи W jω АФЧХ k 1 T 2 ω2 ЛЧХ L h(t) jIm T0 20lgk k Re 0 k t lgω -180o lg(ωc) Примеры реализации – генератор синусоидальных колебаний, осуществим только при наличии подпитки от постороннего источника. Дифференцирующее звено – это звено, выходная величина которого пропорциональна скорости изменения входной величины. Дифференциальное уравнение Передаточная функция Комплексный коэффициент передачи W(s) ks или W(s) Tд s W(j ) jk Переходная характеристика АФЧХ ЛЧХ h(t) jIm yk dx dx или y Tд dt dt L 20lgk о 90 Re t 90о 0 0 lgω Идеальное дифференцирующее звено создает опережение выходного сигнала относительно входного на 90 о для всех частот и является фильтром высокой частоты (ФВЧ). Физически такое звено не- 122 осуществимо (m > n), поэтому на практике используется реальное дифференцирующее звено. Реальное дифференцирующее звено – это совокупность инерционного и идеального дифференцирующего звеньев, соединенных последовательно. Дифференциальное уравнение T Передаточная функция dy dx yk dt dt W(s) Переходная характеристика Комплексный коэффициент передачи kTω2 kω W j 2 2 j 2 2 T ω 1 T ω 1 ks Ts 1 АФЧХ h(t) k 2T k/T ЛЧХ 20lgk Re 45o k/T k 2T t T L =1/T jIm 90о 0 lgω 0 lgωc Реальное интегрирующее звено – это последовательное включение интегратора с инерционным звеном. Дифференциальное уравнение Передаточная функция d 2 y dy T 2 kx dt dt W(s) Переходная характеристика k s(Ts 1) W jω - kT k j 2 3 2 T ω 1 T ω ω 2 АФЧХ ЛЧХ L jIm h(t) Re -kT 20lgk 0 -90о -180о arctg(k) T Комплексный коэффициент передачи t 0 lgω Форсирующее звено первого порядка – самостоятельного значения не имеет, как и форсирующее звено второго порядка, может использоваться только в совокупности с другим звеном при m ≤ n. У форсирующих звеньев перелом ЛЧХ происходит вверх, а выброс корректируется вниз. 123 Дифференциальное уравнение Передаточная функция Комплексный коэффициент передачи dx y k x T dt W(s) k Ts 1 W(j ) k jkTω Переходная характеристика АФЧХ ЛЧХ h(t) L jIm kT*(t) 20lgk k Re t k 90о 0 lgω Реализация соответствует параллельному соединению пропорционального и дифференцирующего звеньев. Запаздывающее звено (звено чистого запаздывания) – повторяет входное воздействие на выходе без изменения масштаба или формы, но с задержкой на время чистого запаздывания. Дифференциальное уравнение Передаточная функция Комплексный коэффициент передачи y x(t τ) W(s) e -sτ W jω e τjω Переходная характеристика АФЧХ ЛЧХ L jIm h(t) 0 t Re -1 1 0 -180о -360о lgω Наиболее характерный пример реализации – транспортер. Запаздывание в системе имеет место всегда, если точки воздействия на объект регулирования и контроля результатов воздействия разнесены в пространстве, например, при регулировании толщины проката. Для приведения передаточной функции звена к обычному виду рациональной дроби используют разложение в ряд Паде, например, разложение первого порядка 1 0,5 s e s . 1 0,5 s 124 5.3 Непрерывные регуляторы и законы регулирования Законом регулирования называют функциональную связь между управляющим воздействием на выходе регулятора и ошибкой регулирования на его входе. Особенность в том, что назначение регулятора – свести к минимуму (нулю) свою входную величину. Перечислим типы линейных непрерывных регуляторов и законы регулирования: - П-регулятор – регулирование по отклонению действительного значения управляемого параметра от заданного; - И-регулятор – регулирование по интегралу отклонения по времени; - ПД-регулятор – регулирование по отклонению и производным отклонения по времени; - ПИ-регулятор (изодром) – регулирование по отклонению и интегралу отклонения по времени; - ПИД-регулятор - регулирование по отклонению, интегралу и производным отклонения по времени. Пропорциональный П-регулятор (статический) имеет закон регулирования u(t) = kр(t), передаточную функцию W(s) = kр и характеристику регулирования (рисунок 66, а). Он обеспечивает самый быстрый переходный процесс, но имеет статическую ошибку регулирования. Величину, обратную коэффициенту усиления регулятора kр, называют статизмом или коэффициентом неравномерности регулятора. Разность между максимальным и минимальным установившимися значениями регулируемой величины называется абсолютной статической неравномерностью. а б в Рисунок 66 г д Интегральный И-регулятор (астатический) имеет закон регулиdu(t ) 1 (t ) , передаточную функцию W ( s) рования Tè и показанTи s dt ную на рисунке 66, б характеристику регулирования. Достоинство регулятора – отсутствие статической ошибки, в установившемся режиме заданное значение регулируемой величины поддерживается при любом значении возмущения. Недостатком является большое время нарастания (регулирования). 125 Пропорционально-интегральный ПИ-регулятор (изодром) имеет 1 закон регулирования u (t ) k p (t ) (t )dt , передаточную функцию Tè 0 k T s 1 и характеристику регулирования (рисунок 66, в). За W ( s) p è Tè s счет П-составляющей ускоряется процесс перехода к новому установившемуся состоянию, за счет И-составляющей исключается остаточная неравномерность. Регулятор реализуется параллельным соединением интегратора и усилительного звена. Постоянная времени Tи называется также временем удвоения, поскольку численно равна времени удвоения значения пропорциональной части. Пропорционально-дифференциальный ПД-регулятор (регулятор d (t ) с предварением) имеет закон регулирования u (t ) k p (t ) Tä , dt передаточную функцию W ( s) k p Tä s и характеристику регулирования (рисунок 66, г). После броска управления в момент появления возмущения характеристика переходит на уровень, соответствующий позиционной части с коэффициентом регулирования kp. Включение производной в закон регулирования позволяет предвидеть изменение регулируемого параметра, что особенно важно при резких и больших возмущениях для объектов со значительной инерцией. Вследствие предварения время переходного процесса и амплитуда колебаний регулируемой величины могут быть уменьшены (это другой способ исключения ошибки регулирования, более быстрый по сравнению с действием интегратора, но менее точный). Регулятор реализуется параллельным соединением дифференцирующего и усилительного звеньев (в виде форсирующих звеньев первого и второго порядка). В энергетике называется регулятором сильного действия и применяется для форсировки напряжения генераторов при коротком замыкании (КЗ) в энергосистеме. Пропорционально-интегрально-дифференциальный ПИД-регулятор (изодром с предварением) имеет закон регулирования TäTè s 2 k pTè s 1 1 d (t ) u (t ) k p (t ) (t )dt Tä , ПФ W ( s ) и хаTè s Tè 0 dt рактеристику регулирования (рисунок 66, д). В момент возмущения превалирует регулирование по производной отклонения выходной величины от заданного значения, интегрирующая часть действует на устранение ошибки в течение всего времени ее существования, но проявляется в конце переходного процесса. 126 Для всех регуляторов с И-составляющей характерно то, что при приближении ошибки (т.е. входного сигнала регулятора) к нулю выходная величина регулятора (управление) фиксируется на некотором уровне, который может не совпадать с предшествующим уровнем управляющего воздействия. Д-регулятор отдельно не применяют, так как его действие приводит к неустойчивости системы, которая начинает реагировать на любые помехи и колебания входной величины, не осуществляя в то же время регулирование в установившемся режиме. Регуляторы могут выполняться с независимым исполнением составляющих (такие регуляторы дороже, сложнее по конструкции, но их легче настраивать) и интерактивными, с взаимным влиянием составляющих закона регулирования (это более дешевые и простые по конструкции регуляторы, настройка которых предусматривается единожды, в заводских условиях, за счет выбора параметров элементов схемы). Современные регуляторы реализуются на микропроцессорах. 5.4 Свойства объектов управления Выбор типа проектируемой САР и качество регулирования зависят от свойств самого объекта регулирования. К статическим свойствам объекта регулирования относятся емкость и самовыравнивание, к динамическим – время разгона, постоянная времени и запаздывание. Емкость – это способность объекта регулирования (одно- или многоемкостного) накапливать энергию, сохранять уровень жидкости, давление газа, скорость вращения и иные регулируемые параметры. Чем меньше емкость, тем быстрее изменяется регулируемая величина при возмущении, тем труднее осуществлять регулирование. Самовыравниванием называется способность объекта регулирования приходить после возмущения к новому устойчивому состоянию без участия регулятора. Степень самовыравнивания определяется коэффициентом ρ = 1/kв, где kв – коэффициент передачи возмущающего воздействия. Существуют объекты с положительным самовыравниванием (статические), без самовыравнивания (нейтральные, астатические) и с отрицательным самовыравниванием (неустойчивые). Время разгона характеризует инерцию объекта, это время, необходимое для изменения значения регулируемого параметра от нуля до номинального значения при полной нагрузке объекта. Постоянная времени для объектов без самовыравнивания (астатических) равна времени разгона, для объектов с самовыравниванием равна времени уменьшения отклонения регулируемого параметра от заданного значения в 2,71 раза (времени достижения величины 0,63 от установившегося значения). 127 Запаздывание – время отставания начала изменения величины регулируемого параметра от момента возмущения. Существует переходное (емкостное) запаздывание, например, из-за гидравлического сопротивления трубы, и передаточное (чистое), например, за счет времени прохождения расстояния (называется также транспортным). При создании системы регулирования нередко приходится решать задачу идентификации, т.е. построения математической модели объекта регулирования на основе анализа его входных и выходных сигналов. В большинстве случаев идентификация производится по переходной характеристике объекта (кривой разгона), причем в первом приближении предполагается модель не выше второго порядка, т.е. совокупность инерционного и запаздывающего звеньев (рисунок 67, а, б), либо совокупность двух инерционных звеньев (рисунок 67, в), наконец, колебательное звено (рисунок 67, г). а б в Рисунок 67 г Перед анализом необходимо провести сглаживание и усреднение экспериментальных данных для исключения случайных помех измерения. Объект с кривой разгона «а» представляется моделью вида k W ( s) e s , у которой коэффициент k равен отношению устаноTs 1 вившегося значения характеристики y∞ к величине воздействия x, время чистого запаздывания τ – длине начального участка с y = 0, а постоянная времени Т – времени возрастания характеристики до 0,63 установившегося значения. Аналогично, хотя и с погрешностью в начальной части, может быть представлен объект с кривой разгона «б». Аппроксимация передаточной функции считается удовлетворительной, если теоретическая и экспериментальная кривые разгона отличаются по ординате не более, чем на 3 %. Следует заметить, что наличие в системе звена чистого запаздывания ухудшает ее свойства, и поэтому предпочтительнее аппроксимация апериодическим звеном второго порядка (рисунок 67, в). Характерной точкой кривой переходного процесса является точка перегиба М, соответствующая середине линейного участка характеристики (моменту изменения знака второй производной) и времени tп. 128 Обозначим расстояния от кривой до линии установившегося значения в точке М, как а, а в точке 2tп, как b, и запишем передаточную функцию системы в виде W (s) k k . T1 s 2 T2 s 1 (T3 s 1)(T4 s 1) Тогда определение параметров модели производится следующим образом. Проводится касательная в точке перегиба М переходной характеристики, которая отсекает на линии установившегося значения отрезок, равный сумме постоянных времени Т2 = Т3 + Т4. Большая из двух постоянная времени Т3 равна b T3 T2 0,5 0,75 . 2 a По экспериментально снятой переходной характеристике колебательного звена (рисунок 67, г) его параметры определяют следующим образом. Коэффициент передачи, как указывалось выше, равен отношению y∞ к величине воздействия x. Частота колебаний ω0 = 2π/Т0, где Т0 измеряется между двумя любыми максимумами (точками одноименных переходов кривой линии установившегося значения). Действительная часть корня равна α = Т0-1ln(a2/a1), где a2/a1 – отношение соседних (через период Т0) однополярных амплитуд. Постоянная времени и коэффициент демпфирования звена определяются из соотношений T 1 / 2 02 , / 2 02 , после чего записывается передаточная функция системы в виде W ( s) k . T s 2Ts 1 2 2 5.8 Линеаризация нелинейных объектов Аппарат описания непрерывных линейных систем проще аппарата, применяемого для нелинейных систем, и характеризуется общностью подхода, поэтому при построении модели объекта или системы регулирования обычно производят линеаризацию. Линеаризируются нелинейные характеристики, не имеющие разрывов или изломов, при небольших отклонениях выходного параметра от заданного (номинального) режима. 129 Если статическая характеристика задана графически, обычно используются методы касательной или секущей. Пусть задана нелинейная характеристика y = f(x) и точка номинального режима (рисунок 68, а) с координатами (x0, y0). а б Рисунок 68 Для линеаризации этой характеристики через рабочую точку проводится касательная к кривой, описываемая уравнением y = a + bx, где b = tgα. Если начало координат перенести в рабочую точку, то рабочее уравнение может быть записано в отклонениях Δy = b·Δx = k·Δx. Диапазон, в котором характеристика считается линейной, определяется из максимально допустимых отклонений y1пр – y1д ≤ Δ, где Δ – заданное отклонение, которое обычно принимается в пределах 3 % от номинальной величины y0. При линеаризации нелинейной характеристики методом секущей (рисунок 68, б) через точки А1 и А2 с ординатами предельного режима проводится секущая, а затем параллельно ей касательная к кривой. Линейная характеристика объекта выбирается между этими прямыми, а начало координат может быть перенесено в любую точку, лежащую на этой характеристике в диапазоне (x1, x2). С изменением режима работы нелинейной системы или диапазона (x1, x2) линеаризацию необходимо выполнить повторно. Если нелинейная функция y = f(x) задана аналитически и известна точка номинального режима с координатами (x0, y0), для ее линеаризации используют разложение в ряд Тейлора с ограниченным числом членов F ( x) F ( x) y F ( x) x x ( x x0 ) ( x x0 )2 ... 0 1! x x0 2! x x0 Пренебрегая малыми нелинейностями высокого порядка при небольших отклонениях (x – x0) считают, что функция преобразования описывается уравнением 130 y F ( x) x x F ( x) 0 x x0 ( x x0 ) , где F ( x) x x ( x x0 ) =const. 0 Перенося начало координат в рабочую точку (x0, y0), получают y F ( x) x x x k x . 0 Пример. Выполним линеаризацию статической характеристики электромагнита Ф = Вi0,17 в точке J0. Разложим функцию, связывающую между собой магнитный поток Ф (выходная величина) и ток в обмотке электромагнита i (входная величина) в ряд Тейлора с двумя первыми членами разложения Ô Bi0 ,17 i J0 d ( Bi0 ,17 ) (i J 0 ) di i J 0 откуда Ô BJ 00 ,17 0,17 BJ 00 ,83 i . Перенеся начало координат в точку (J0, Ф0), получим линеаризованную статическую характеристику электромагнита в приращениях Ô 0,17 BJ 00 ,83 i . 5.5 Корректирующие звенья К основным способам исправления (коррекции) характеристик систем в процессе проектирования относятся изменение параметров системы путем настройки и изменение структуры системы путем ввода дополнительных звеньев (корректирующих устройств). Корректирующие устройства (КУ) делят на четыре класса: - последовательные корректирующие устройства (фильтры); - параллельные корректирующие устройства, выполняемые в виде дополнительных местных ОС; - корректирующие устройства по внешнему воздействию (инвариантные); - корректирующие устройства в цепи главной ОС. Последовательные КУ включаются согласно в цепь главной прямой связи разомкнутой системы последовательно с объектом (рисунок 69,а), либо последовательно с одной частью системы и параллельно с другой (рисунок 69, б). а б Рисунок 69 131 Корректирующие звенья могут представлять собой типовые регуляторы. При этом: - включение П-регулятора увеличивает общий коэффициент усиления системы, уменьшает статизм, т.е. ошибку регулирования, повышает точность системы, но уменьшает запас устойчивости; - включение И-регулятора повышает астатизм разомкнутой системы и исключает статическую ошибку, но ухудшает устойчивость; - включение ПД-регулятора – при вводе производной по ошибке добавляется положительная фаза, радиус-векторы АФЧХ поворачиваются против часовой стрелки, увеличивая запас устойчивости и улучшая качество переходного процесса; - включение ПИ-регулятора улучшает точность, практически не влияя на устойчивость. Параллельные КУ (рисунок 70) выполняются в виде местных обратных связей, охватывающих часть существующих блоков системы. Для коррекции используются: Рисунок 70 - жесткая обратная связь Wk(s)=koc; - инерционная жесткая ОС Wk(s)=koc /(Tocs+1); - гибкая обратная связь Wk(s)=koc s; - инерционная гибкая ОС Wk(s)=koc s/(Tocs+1). Корректирующая обратная связь может быть как отрицательной, так и положительной. Жесткая ОС устраняет интегрирующие свойства звена (его астатизм), гибкая ОС сохраняет их. Инвариантные КУ предназначены для снижения влияния внешних воздействий на поведение системы. Инвариантностью называется нечувствительность системы к изменению ее параметров, режимов работы, внешних воздействий и т.п. При введении коррекции по внешнему воздействию теоретически возможно свести величину установившейся ошибки к нулю. Создадим КУ по задающему воздействию (рисунок 71). Для полной компенсации ошибки от задания необходимо обеспечить равенство нулю соответствующей передаточной функции Рисунок 71 Wer ( s) 1 Wk ( s)Wo ( s) , 1 Wo ( s) откуда следует 1- Wk(s)Wo(s) = 0 и, окончательно, Wk(s) = 1/Wo(s). 132 Рассмотрим КУ по возмущающему воздействию (рисунок 72). Для полной компенсации ошибки от возмущения нужно обеспечить равенство нулю соответствующей передаточной функции Рисунок 72 W yf ( s) W2 ( s)[W3 ( s) Wk ( s)W1 ( s)] 0, 1 W1 ( s)W2 ( s) откуда следует Wk(s) = W3(s)/W1(s). Важное преимущество метода: в обоих случаях улучшение точности достигается без изменения знаменателя передаточной функции, т.е. устойчивость системы и качество переходного процесса не ухудшаются. К недостаткам метода обычно относят то, что не все возмущения можно измерить (наблюдать), не всегда известна передаточная функция W3(s) на входе для возмущений. Неединичная главная обратная связь, как правило, изменяет вид характеристического уравнения, а, следовательно, влияет одновременно на устойчивость и качество регулирования. Этим обусловлены и достоинства, и недостатки метода. Запишем ПФ системы (рисунок 73) W ( s) Рисунок 73 Wo ( s) . 1 Wk ( s)Wo ( s) Для полной инвариантности системы по задающему воздействию Y(s) = R(s) передаточная функция должна быть равна единице, откуда и следует Wk(s)=[Wo(s)-1]/Wo(s)=1-1/Wo(s). Качественные характеристики системы регулирования могут изменяться в результате старения, износа конструкций, кроме того, действительные параметры элементов системы могут изначально отличаться от расчетных в пределах допуска. Влияние изменения параметров САР на ее статические и динамические свойства называют параметрическими возмущениями, а возникающие при этом отклонения от расчетных характеристик – параметрическими ошибками. Чувствительность характеризует степень изменения показателей качества системы в результате отклонения ее параметра от исходного или расчетного значения. Противоположное свойство называется грубостью, а системы, сохраняющие свои свойства в заданных грани- 133 цах при любых параметрических возмущениях, называются грубыми или робастными. Количественными оценками чувствительности служат функции или коэффициенты чувствительности. Функция чувствительности представляет собой частную производную выбранного показателя (например, запаса устойчивости, W(s), σ, tрег) по варьируемому параметру, откуда и определяется значение параметра, минимизирующее чувствительность системы. Чем меньше значения функции (коэффициента) чувствительности и грубее система, тем выше ее качество регулирования, тем стабильнее ее поведение во времени. 5.6 Синтез систем регулирования по ЛАЧХ Последовательные КУ часто выбирают, используя ЛЧХ, в следующем порядке: - строят реальную ЛАЧХ разомкнутой системы; - строят желаемую ЛАЧХ по заданным показателям качества; - находят разностную ЛАЧХ; - подбирают к ней структуру фильтра (корректирующего устройства); - проверяют полученный результат построением временных и частотных характеристик новой системы управления. У желаемой ЛАЧХ выделяют три части – низкочастотную, среднечастотную и высокочастотную. Добротность К и астатизм НЧасимптоты определяются по требуемой точности в установившемся режиме. Центром среднечастотной части является пересечение ЛАЧХ с осью частот на частоте среза ñð k / t ðåã , где коэффициент k принимают равным 1,3 … 2,5 для перерегулирования σ = 15 … 30 %. Наклон этой части обычно равен -20 дБ/дек, что обеспечивает запас устойчивости по фазе приблизительно 45°. Слева и справа среднечастотная часть ограничена частотами ωmin и ωmax, выбираемыми по одному из условий: 2 а) max (2 4)ñð ; min ñð / max , б) расстояние 0,5-0,9 декады между частотами ωmin и ωmax. Общее замечание – чем больше интервалы ωmin- ωср и ωср -ωmax, тем быстрее затухает переходный процесс. Точки, соответствующие ωmin и ωmax, соединяют с реальной ЛАЧХ линиями с наклоном (-40 … -60) дБ/дек. Высокочастотная часть ЛАЧХ обычно совмещается с реальной, что позволяет сохранить порядок системы. Пример: система имеет реальную ЛАЧХ (рисунок 74). 134 По показателям качества выбрана частота среза ωср, через которую с наклоном -20 дБ/дек проведен отрезок: влево – до частоты ωmin, выбранной на расстоянии 0,5 декады от частоты среза, вправо – до пересечения с высокочастотной асимптотой реальной ЛАЧХ, что будет соответствовать ωmax. Точка ωmin соединена с реальной ЛАЧХ отрезком с наклоном -40 дБ/дек. реальная ЛАЧХ 1/T1 желаемая ЛАЧХ ωmin ωср 1/T4 ω ωmax 1/T2 1/T3 разностная ЛАЧХ Рисунок 74 По частотам сопряжения этих двух характеристик получены значения постоянных времени Т1 – Т4 и построена разностная ЛАЧХ, что позволяет определить углы наклона на каждой частоте. Отсюда получаем параметры последовательного корректирующего звена Wk ( s) (T2 s 1)(T3 s 1) . (T1s 1)(T4 s 1) 5.7 Системы регулирования с запаздыванием Наряду со стандартными линейными системами регулирования существуют особые, к которым относятся: - САУ с запаздыванием; - САУ с распределенными параметрами; - САУ с переменными параметрами (нестационарные); - дискретные линейные САУ. Наиболее часто в инженерной практике встречаются системы с запаздыванием, имеющие по крайней мере одно звено, реакция на выходе которого отстает по времени от входного воздействия на постоянную величину τ. Такой объект описывается дифференциально-разностным уравнением с запаздывающим аргументом a0 p 2 y a1 py a2 y a3 y (t ) kx . Здесь член a3 y (t ) соответствует изображению a3Y ( s )e s . Если входное воздействие x xme jt xm sin t , то реакция системы имеет вид y yme j (t ) ym sin[ (t )] . Характерными примерами систем с запаздыванием являются системы дозирования вещества, пе- 135 ремещаемого по транспортеру, измерения толщины проката на расстоянии от регулируемых валков. Рассмотрим особенности их проектирования. Звено чистого запаздывания может находиться в цепи прямой N ( s) s связи W ( s) W0 ( s)e s k e , тогда после замыкания ПФ сисD p ( s) W ( s) kN ( s) es . Если s 1 W ( s) Dp ( s) kN ( s)e звено запаздывания в прямой цепи охвачено местной обратной связью, либо находится в цепи главной обратной связи, выражение усложняется, и эти случаи необходимо рассматривать отдельно. Из комплексного коэффициента передачи разомкнутой системы W ( j ) W0 ( j ) e j следует A( ) A0 ( ) и ( ) 0 ( ) , т.е. наличие элемента запаздывания не изменяет амплитуду частотной характеристики, но существенно влияет на ее фазу, причем с ростом частоты фазовый сдвиг все более смещается к минус бесконечности. Поэтому векторы А(ω) для всех частот поворачиваются по часовой стрелке на угол τω и годограф W(jω) принимает спиралевидную форму, асимптотически приближаясь к началу координат (рисунок 75, а). Для правильного отсчета фазовых углов АФЧХ должна строиться в равномерном масштабе по всем осям. темы будет иметь вид Ф(s) а б Рисунок 75 Вид ЛАХ не изменяется, ЛФХ с ростом частоты все сильнее отклоняется вниз (рисунок 75, б) и пересекает линию -180° при меньшей частоте, система может стать неустойчивой. Отсюда вытекает, что системы с запаздыванием имеют меньшие запасы устойчивости при одинаковых параметрах основной части W0(s). Даже в системах первого порядка типа инерционного звена, за- 136 ведомо устойчивых при положительных значениях k и Т, при добавлении запаздывания переходный процесс из монотонного преобразуется в колебательный и возникают предпосылки неустойчивой работы, усиливающиеся с ростом τ. В то же время оценка устойчивости систем с запаздыванием сложнее, чем у обычных систем. Характеристическое уравнение САР с запаздыванием является не алгебраическим, а трансцедентальным, поскольку его свободный член содержит оператор сдвига e s . Хотя такое уравнение содержит бесконечное множество корней, их отрицательная действительная часть по-прежнему является обязательным условием устойчивости системы. Положительность коэффициентов уравнения не является здесь достаточным для устойчивости систем 1-го и 2-го порядка, а прямое использование критериев Гурвица и Рауса невозможно. Применяют замену оператора сдвига разложением в ряд Паде заданного порядка m для приведения к обычному полиномиальному виду, например e s s 2 2 s 2 6 s 12 ..., s 2 2 s 2 6 s 12 однако это увеличивает общий порядок системы на величину порядка разложения в ряд Паде. Критерий Михайлова и D-разбиение применимы для замкнутой системы в обычных формулировках, однако вид кривых отличается от стандартных из-за наличия колебательных по параметру τ составляющих. Так, система со знаменателем ПФ D( s) Ts 2 s ke s после замыкания при оценке устойчивости по Михайлову имеет характеристическую функцию D( j ) T 2 j k (cos j sin ) k cos T 2 j ( sin ) . Из-за колебательного характера кривых небольшое изменение параметров системы чревато потерей устойчивости. Критическое запаздывание может быть определено по критерию Найквиста. Графоаналитический метод – для системы без запаздывания W0(s) строим АФЧХ, находим величину запаса устойчивости по фазе φм и значение соответствующей ему частоты ωм, откуда и определяется запас по запаздыванию m m ( ðàä ) / m ( ðàä / ñ) ( ) / m , где ψ – угол, дополняющий φм до 180°, arctg[ImW ( j ) / ReW ( j )] . По аналитическому методу критическое запаздывание определяется из условия А(ω) = 1. Пусть W0 ( s ) k /(Ts 1) , тогда условие А0(ω) = 1 имеет вид 137 k T 2m2 1 1 , откуда m k 2 1 T . Учитывая, что arctg (T m ) , получим êð arctg (Tm ) arctg ( k 2 1) T . 2 m m k 1 Если элемент запаздывания находится в цепи местной обратной связи, его влияние может быть иным, в частности, даже улучшать общую устойчивость системы. 5.9 Классификация систем управления Не рассматривая возможное деление систем регулирования по области применения (авиация, энергетика…), стоимости, массе, габаритам и прочим характеристикам, уделим внимание лишь классификации по особенностям процесса регулирования. В этом смысле системы можно делить: - по использованию информации в рабочем процессе (циклические, ациклические); - по характеру изменения задающего воздействия во времени (стабилизирующие, программные, следящие); - по точности в установившемся режиме (статические, астатические); - по методу формирования управляющих воздействий (с управлением по отклонению, по возмущению, комбинированные); - по характеру сигнала (непрерывные – дискретные) и виду модели (линейные – нелинейные); - по степени приспосабливаемости к изменению условий работы (обычные, адаптивные, поисковые). Рассмотрим несколько подробнее основания для приведенной классификации. Использование информации в процессе управления. Циклические (детерминированные, безрефлексные, с жестким управлением) системы выполняют свои функции по заранее заданной программе независимо от фактического протекания процесса. Они либо вообще не используют текущую (рабочую) информацию, либо она имеет чисто вспомогательное значение. Для таких систем требуется большой объем заранее собранной (априорной) информации об объекте регулирования, так как отсутствует возможность последующей корректировки поведения. Ациклические (рефлексные) системы действуют в зависимости от фактического протекания процесса, на основе непрерывно полу- 138 чаемой рабочей информации. Они требуют меньшего объема априорной информации и обладают некоторой свободой поведения. Обычно первые – разомкнутые, не охваченные главной обратной связью, вторые – замкнутые отрицательной ОС. Характер изменения задающего воздействия во времени. У стабилизирующих систем задающее воздействие постоянно во времени, регулируемый параметр в пределах допустимой погрешности поддерживается постоянным при любых возмущениях. В системах программного управления задающее воздействие изменяется во времени по заранее выбранному закону (программе), регулируемый параметр в пределах допустимой погрешности воспроизводит изменения задающего воздействия. Система называется следящей, если характер изменения задающего воздействия заранее неизвестен и оно является произвольной функцией времени, не зависящей от САР, регулируемый параметр в пределах допустимой погрешности воспроизводит изменения задающего воздействия. Метод формирования управляющих воздействий. Системы с управлением по отклонению регулируемой величины от заданного значения формируют управляющее воздействие в зависимости от величины и знака рассогласования r(t) – y(t) (принцип Ползунова) и были рассмотрены нами ранее. Системы такого рода реагируют на любые возмущения, не измеряя их, поэтому их точность выше, а структура обычно проще. Однако их быстродействие ниже, поскольку они срабатывают уже после появления реакции объекта на возмущение. Принципиальный недостаток – обязательно должно наступить ухудшение в работе объекта, чтобы его можно было исправить. Это замкнутые системы с главной ОС, наличие обратной связи может в некоторых случаях приводить к нарушению устойчивости. Система с управлением по возмущению (рисунок 76, а) реагирует только на появление выбранного возмущающего воздействия, не универсальна и действует по принципу компенсации возмущения (принцип Понселе). а б Рисунок 76 139 Для таких САР необходимо, чтобы выбранное возмущение x было основным по влиянию на объект ОУ, поддавалось измерению, а характеристики возмущений М и объекта были точно известны. Эти системы имеют высокое быстродействие и позволяют получить нулевую ошибку в процессе управления за счет того, что управление формируется устройством управления УУ сразу же с появлением возмущения (если оно превышает уставку x0) и производится с упреждением ухудшения состояния объекта. Однако они характеризуются меньшей точностью, так как контролируется лишь часть возможных возмущений, требуют тщательного изучения объекта, не обеспечивают контроль правильности действий. Комбинированные системы сочетают достоинства обоих рассмотренных принципов управления (рисунок 76, б). В установившихся режимах или режимах с малыми отклонениями у них превалирует подсистема регулирования УР, осуществляющая управление по отклонению, а в переходных режимах с резкими большими возмущениями подключается часть УУ с управлением по возмущению. Точность в установившемся режиме. У статических систем всегда имеется ошибка регулирования в установившемся режиме, существует точное соответствие между значениями регулируемой и управляющей величин, между величиной возмущения и значением рассогласования (ошибки). Статическая характеристика отражает зависимость установившейся ошибки от величины входного воздействия и коэффициента передачи ошибки (смотри раздел 3). В астатических системах ошибка регулирования остается нулевой при разной величине возмущений благодаря тому, что управляющее воздействие непрерывно возрастает по модулю до тех пор, пока контролируемое рассогласование не исчезнет. Эти системы точнее, но требуют времени на устранение ошибки. В момент полной компенсации рассогласования величина управляющего воздействия может быть произвольной в рамках возможного диапазона. Вид используемой информации (характер сигнала). Непрерывные (аналоговые) системы воздействуют на объект в течение всего времени работы, используют монотонно изменяющиеся или непрерывные периодические сигналы. Работа дискретных систем основана на кусочном изменении (квантовании, дискретизации) сигнала. В импульсных системах осуществляется квантование по времени (управляющее воздействие формируется в течение коротких интервалов времени, разделенных пау- 140 зами), в релейных – квантование по уровню (позиции), в цифровых используются оба способа. Обычно в составе дискретных линейных систем имеется элемент преобразования непрерывных величин в дискретные при существенном преобладании линейной части ЛЧ системы (рисунок 77, а). Например, работа импульсного регулятора с амплитудной модуляцией (дискретный линейный) характеризуется тем (рисунок 77, б), что амплитуда а импульсов, следующих через равные промежутки времени Т0, линейно зависит от входной величины u. а б Рисунок 77 в Релейный двухпозиционный регулятор без зоны нечувствительности осуществляет двухпозиционное регулирование (рисунок 77, в) в пределах umax и umin. Его работа сопровождается автоколебаниями регулируемого параметра вблизи заданного значения yзад после выхода системы на это значение. Амплитуда и частота автоколебаний зависят от инерционности объекта регулирования и уровня управляющего воздействия. Приспосабливаемость к изменению условий работы. Обычные системы регулирования, которые мы и изучали до сих пор, не способны подстраиваться к изменениям условий работы, характеристик энергоносителей, они следуют заданному алгоритму управления без всяких отступлений. Поисковые системы формируют представление о состоянии объекта с помощью пробных воздействий и анализа их результатов в условиях максимальной неопределенности. Самоприспосабливающиеся (адаптивные) системы делятся на: - самонастраивающиеся (подобные системы самостоятельно изменяют значения параметров выбранных элементов регулировки); - самоорганизующиеся (изменяют собственную структуру); - самопрограммирующиеся (изменяют свой алгоритм функционирования). Они имеют в своем составе специальное устройство, изменяющее настройку, структуру или программу регулятора на основе до- 141 полнительной информации, поступающей в процессе управления объектом. К адаптивным относятся и экстремальные регуляторы, автоматически выводящие систему на экстремальное значение регулируемой величины при вариациях прочих параметров. Они выбирают наилучшее по заданному критерию управление в условиях имеющихся ограничений при дрейфующих экстремальных характеристиках объекта. Закон регулирования экстремальных регуляторов – поиск экстремума регулируемой величины путем пробных изменений управляющего воздействия. Регулируемая величина в таких системах также непрерывно совершает автоколебания, однако, в отличие от релейных регуляторов, не после выхода на заданное значение, а сразу же после ввода в работу. Адаптивные системы обеспечивают получение оптимальных по некоторому критерию (целевой функции) результатов управления и изучаются в теории оптимального управления. 142 6 Компьютерное моделирование систем управления 6.1 Моделирование систем управления на ЭВМ Моделью называется отображение реального объекта (оригинала), обладающее теми его свойствами, которые существенны для цели исследования. Модель не может содержать все параметры оригинала, так как тогда сама будет являться оригиналом (клоном). Моделирование – это замещение оригинала его условным образом или другим объектом (моделью) и изучение свойств оригинала путем исследования свойств модели. К любой модели, не прошедшей достаточной проверки, следует относиться критически, допуская возможность неверного подхода или неправильной трактовки результатов. Адекватность модели реальности проверяется из здравого смысла, опыта, других источников. При моделировании предполагается, что модель обеспечивает правильное (адекватное) отображение существенных свойств оригинала и позволяет устранить проблемы, мешающие исследовать реальный объект (размеры объекта, масштаб времени, невозможность повторения эксперимента, высокая стоимость изготовления образца только для опытов над ним и т.п.). Моделирование основано на том, что каждый объект в каких-то свойствах похож на другие. Это выражается в принципах ограниченности количества фундаментальных законов природы и подобия (явления разной физической природы могут описываться одинаковыми математическими зависимостями). Соответственно модели можно разделить на физические (геометрически подобные, сходные по физическим законам) и абстрактные (словесные, математические). Математические модели подразделяются на графические (структурные схемы, графы), табличные (таблицы данных, истинности), алгоритмические (программы для ЭВМ), аналитические (формулы). Существует двоякое отношение к моделированию. Один подход предполагает, что из модели невозможно получить новые знания об объекте, поскольку при создании модели в нее закладываются только известные связи. Следовательно, модель – это всего лишь расчетный объект, замещающий оригинал. По другому подходу у системы, т.е. совокупности известных элементов и связей между ними, могут проявиться новые свойства, отсутствующие у элементов в отдельности, и возникать новые знания. Однако лишь сравнение с оригиналом подтверждает или отрицает их достоверность. Компьютерное моделирование – это математическое моделирование объекта с использованием средств вычислительной техники. 143 Обычно оно складывается из таких этапов, как определение цели моделирования, разработка концептуальной модели, формализация модели, программная реализация модели, планирование модельных экспериментов, реализация экспериментов, анализ и интерпретация результатов экспериментов. Содержание этапов зависит от принятого метода моделирования, распределения их между исполнителями. Так, в лабораторном практикуме студенты выполняют обычно реализацию экспериментов и анализ их результатов, реже планирование эксперимента. При аналитическом моделировании математическая модель задается в виде готовых алгебраических, дифференциальных или иных уравнений, связывающих входные переменные с выходными при установленных ограничениях. Здесь существует однозначная вычислительная процедура получения точного решения. При имитационном моделировании математическая модель воспроизводит алгоритм (логику) поведения исследуемой системы во времени для различных сочетаний значений параметров системы и внешней среды, задаваемых экспериментатором. В компьютерном моделировании существуют три представления времени – реальное, в котором движется система, модельное (системное) время, в масштабе которого организована работа модели, машинное время, характеризующее затраты ЭВМ на процесс имитации. Модельное время может иметь больший и меньший масштаб по сравнению с реальной длительностью протекания процесса, изменяться с постоянным шагом или по особым состояниям. Устойчивость модели характеризует ее способность соответствовать оригиналу во всем возможном диапазоне применения или при внесении изменений в структуру системы. Процедуру построения модели называют идентификацией объекта (распознаванием), в нее входят: - структурная идентификация, в процессе которой подбирают наиболее соответствующий объекту тип модели и состав образующих модель элементов (структуру); - параметрическая идентификация, при которой вычисляют значения параметров, существенных для выбранного типа модели, по экспериментальным данным. Она включает обработку данных, например, аппроксимацию, и т.п.; - проверка адекватности, т.е. проверка близости объекта и модели в известном смысле. Цель идентификации – путем наблюдения за входным и выходным сигналами объекта на некотором интервале времени определить 144 вид оператора, связывающего эти сигналы, и его количественные оценки в условиях помех и шумов измерения, ведущих к ошибке. Наиболее просто задача идентификации решается для линейных непрерывных стационарных динамических объектов. Важную роль при этом играет выбор времени исследования и величины шага. Для выбора интервала исследования, например, при выполнении лабораторной работы, проводят несколько пробных экспериментов с разными исходными данными и анализируют результат. Выбор величины шага производят по средней интенсивности появления событий разного типа. Особые состояния выявляют сторонними способами, например, для автоматического выбора интервала построения переходного процесса исследуют корни характеристического полинома системы. Задачи идентификации систем управления с использованием ЭВМ подразделяются: по типу объекта (линейный, нелинейный, стационарный, нестационарный, непрерывный. дискретный), по виду модели (дифференциальное уравнение, передаточная функция, импульсная характеристика, переходная характеристика, частотные характеристики, разностные уравнения), по способу обработки информации (нестатистический или детерминированный подход, статистический или вероятностный подход). Идентификация производится на основе либо пассивного эксперимента – простого наблюдения за входомвыходом объекта и обработки данных, либо активного эксперимента, когда исследователь сам выбирает и формирует воздействия. Начальным средством моделирования систем управления служили аналоговые вычислительные машины (АВМ), представляющие собой по сути набор решающих блоков (операционных усилителей), поле для составления схемы с помощью проводников, элементы регулировки параметров и индикатор (показывающий прибор, осциллограф). С помощью АВМ строится модель, основанная на подобии физических законов работы объекта и модели [19]. Современные методы исследования систем управления основаны на использовании цифровых ЭВМ. Различными организациями разрабатываются собственные программные средства (в ПГУ это, например, комплекс программ LinCAD), приспособленные для конкретного круга задач. Одновременно развиваются и широко используются универсальные программные средства широкого назначения, к каковым относится, в частности, MATLAB фирмы The Math Works, Inc. Специализированные продукты малы по объему, просты в установке и использовании. Универсальные могут применяться одновременно для решения разнообразных задач, но, как правило, объемны и дороги. 145 6.2 Пакет программ LinCAD Библиотека LinCAD включает набор программ для исследования линейных систем под управлением DOS [20] и предназначена для образовательных целей. В лабораторном практикуме [21] используется лишь часть программ библиотеки, относящаяся к одномерным системам управления: TIMECHAR "Временные характеристики", FREQCHAR "Частотные характеристики", MICHCHAR "Критерий Михайлова", DRAZBTWO "D-разбиение по двум параметрам", ROOTLOCS "Корневой годограф", EILERPIC "Переходная характеристика", BODECHAR "Логарифмические характеристики". Ввод данных во всех программах производится единообразно в виде передаточной функции или характеристического полинома, целая часть числа отделяется точкой. В обоих случаях предварительно запрашивается порядок полинома (максимальная степень s, не выше семи), а затем вводятся коэффициенты в порядке убывания степени s (от старшего коэффициента к младшему, включая нулевые значения). Индексы коэффициентов полинома соответствуют записи P( s ) a0 s n a1 s n1 ... an1 s an . Программа TIMECHAR позволяет исследовать реакцию на типовое воздействие во временной области звеньев (фильтров) по передаточной функции, числитель и знаменатель которой вводятся. Входной сигнал выбирается из набора: единичный скачок 1(t), линейное t, квадратичное t^2, гармоническое sin(t) и экспоненциальное 1-exp(-t) воздействия, длительность периода исследования задается пользователем. Каждый раз входное воздействие разлагается в ряд Фурье m x(t ) a0 Ak cos k t Bk sin k t , k 1 постоянная составляющая a0, частота первой гармоники ω и коэффициенты Ak, Bk части гармоник которого (не более пятнадцати) выводятся на экран. Отклик фильтра является суммой реакций на гармонические воздействия, число которых m ограничено значением 100, в результате отсутствие высших гармоник искажает начальную часть кривой – снижает максимальное значение при t=0 (рисунок 78). Целью работы, выполняемой с помощью программы FREQCHAR, является изучение типовых частотных характеристик САР, исследование в частотной области реакции звеньев (фильтров) на гармоническое воздействие. Вводятся числитель и знаменатель передаточной функции звена, в окне «Просмотр» выводятся зависимости от- 146 ношения амплитуд A() и разности фаз () в градусах выходного и входного гармонического сигналов системы от частоты (рад/с) в установившемся режиме, называемые соответственно амплитудной (АЧХ) и фазовой (ФЧХ) частотными характеристиками. Можно выбрать линейный или логарифмический масштаб изменения частоты, в последнем случае ввод частоты ω = 0 блокируется (рисунок 79). Рисунок 78 Рисунок 79 Для выбранного положения курсора рассчитываются также действительная Re(ω) и мнимая Im(ω) части комплексного коэффициента передачи, графики которых можно построить самостоятельно. По команде Tab выводятся параметры реакции звена на заданной частоте. 147 Программой MICHCHAR производится оценка устойчивости САР по частотному критерию Михайлова для вводимого характеристического полинома системы. Выводятся кривая Михайлова на комплексной плоскости с таблицей частот, соответствующих начальной, конечной точкам графика и пересечениям кривой с осями координат (рисунок 80). Диапазон частот подбирают экспериментально для более точного определения координат пересечения действительной и мнимой осей и получения желаемого вида кривой Михайлова. По полученной таблице можно построить графики четной и нечетной функций в соответствии со второй формой (следствием) критерия Михайлова и сделать вывод об устойчивости системы. Рисунок 80 Для изучения метода D-разбиения по двум параметрам служит программа DRAZBTWO, позволяющая получить на плоскости параметров область устойчивости при изменении в заданном диапазоне коэффициента an и одного из коэффициентов a1 - an-1 характеристического уравнения. Для остальных коэффициентов сохраняются номинальные значения. Какой из коэффициентов a1 - an-1 лучше выбрать для изменения, подбирается экспериментально по наиболее характерному проявлению областей устойчивости, при этом его значение рекомендуется задавать в пределах 0.9-1.1 номинального (рисунок 81). Перемещением визира по линии, соответствующей номинальному значению неосновного изменяемого коэффициента, можно определить критическое значение an крит, при котором пересекается граница области устойчивости, а в самой области устойчивости выбрать желаемое значение an приблизительно равноудаленным от границ области. На полученном графике областей D-разбиения область устой- 148 чивости выделена зеленым цветом, границы устойчивости – желтым, прочие цвета соответствуют областям с разным числом правых корней характеристического уравнения. Предполагается, что параметры системы входят в изменяемые коэффициенты характеристического уравнения линейно. Рисунок 81 Программа ROOTLOCS позволяет получить корневой годограф замкнутой системы при изменении коэффициента an (свободного члена) в задаваемом диапазоне (рисунок 82). Предполагается, что система не имеет нулей и при замыкании коэффициент передачи попал в свободный член передаточной функции замкнутой системы. Рисунок 82 Целью работы является изучение методов проектирования систем по корням характеристического уравнения при заданных показателях качества регулирования. При этом для устойчивой системы в 149 соответствии с положением курсора на комплексной плоскости выводятся общие значения времени регулирования, перерегулирования и текущего значения коэффициента an. Кроме того, в окне «Корни» выводятся все значения корней полинома, соответствующие текущему значению изменяемого коэффициента. Клавишей Ins может изменяться масштаб графика (видимая часть), клавишами курсора «вверхвниз» производится растяжка графика по горизонтальной оси (если один из корней расположен слишком далеко от мнимой оси и остальных корней и им можно пренебречь). Траектории корней выписываются только маркерами, соединительная линия отсутствует и ее следует добавить при необходимости самому пользователю. Программа EILERPIC по введенным коэффициентам числителя и знаменателя передаточной функции строит отклик системы на единичный скачок от нуля до заданного момента времени (рисунок 83). Рисунок 83 Целью работы является изучение методов проектирования систем с использованием прямых показателей качества регулирования в переходном и установившемся режимах. Длительность периода исследования подбирают экспериментально так, чтобы к концу периода переходный процесс заканчивался, но в то же время все параметры характеристики легко определялись. Клавиша TAB позволяет включить в график нулевую отметку оси ординат, если она отсутствует. Для построения логарифмических характеристик используется программа BODECHAR, которая по введенным коэффициентам полиномов числителя и знаменателя передаточной функции разомкнутой системы вычисляет частоты сопряжения, добротность системы, порядок астатизма, указывает кратность для комплексных сопряженных 150 корней и направление асимптоты: вверх (/) – для корней числителя, вниз (\) – для корней знаменателя. Целью работы является изучение методов определения количественных оценок запасов устойчивости системы с помощью частотного критерия устойчивости Найквиста в логарифмической форме или диаграммы Боде (рисунок 84). Рисунок 84 Разработана версия программы LinCAD [22], работающая в операционной системе Windows и позволяющая исследовать линейные системы управления и регулирования во временной, частотной, операторной областях с применением моделей в виде пространства состояний, передаточной функции, нулей-полюсов-коэффициента и использованием конструктора структурных схем (рисунок 85). Рисунок 85 Библиотека элементов конструктора структурных схем содержит блоки, узлы, сумматоры, входы и выходы. Блоки, входы и выходы могут иметь индивидуальное имя, сумматоры – разнополярные 151 входы. Описание блока выполняется одним из способов: передаточной функцией (отношением полиномов от s), нулями и полюсами (комплексными числами), матрицами A, B, C, D в пространстве состояний. Сборка схемы производится направленными ветвями с помощью мыши по сетке или без нее, для собранной схемы рассчитывается эквивалентная модель в любой из перечисленных форм. Параметры модели могут быть сохранены в файл, а ее схема распечатана. В блок временных характеристик входит пять видов реакций на типовые воздействия: единичный скачок, импульс, гармоническое воздействие, степенной ряд, начальные условия. Доступно также получение реакции на произвольную функцию времени, имеющую преобразование Лапласа. Для любой точки графика с помощью курсора могут быть получены численные величины. Для переходной характеристики выводятся показатели качества: время регулирования, нарастания, максимума, значение перерегулирования. Зоны контроля времени регулирования и нарастания задаются. Диапазон расчета может задаваться вручную или выбирается автоматически. Каждая опция формирует собственное рабочее окно. В блок частотных характеристик входит построение амплитудной и фазовой, действительной и мнимой характеристик в логарифмическом и линейном масштабе. Для годографа Найквиста указывается особая точка (-1, j0) и направление кривой, могут быть показаны дуга единичного радиуса и луч оценки запасов по амплитуде и фазе. Кривая Михайлова строится либо на комплексной плоскости, либо в виде четной и нечетной функций. Выполняется D-разбиение по одному или двум параметрам. Строится диаграмма Боде с выводом значений запасов устойчивости по амплитуде и фазе. Для всех частотных характеристик, позволяющих судить об устойчивости системы, возможно размыкание и замыкание главной обратной связи системы. Диапазон расчета для положительных частот может задаваться вручную или выбирается автоматически. Для любой точки графика с помощью курсора могут быть получены численные величины. В блоке дополнительных исследований может быть построен корневой годограф системы с выводом для заданной величины анализируемого параметра общих значений перерегулирования и времени регулирования системы. Производится разложение модели системы (заданного изображения) на простые дроби с помощью обратного преобразования Лапласа с выводом графика каждой составляющей оригинала. Выполняется расчет коэффициентов присоединенной и фундаментальной матриц, оценка управляемости и наблюдаемости многомерной системы. Осуществляется расчет устойчивости системы 152 по алгебраическим критериям Рауса и Гурвица, обеспечивается размыкание и замыкание главной обратной связи системы. Особенностью принятого подхода к построению программы является избыточный вывод информации – так, помимо собственно заключения об устойчивости системы пользователю выводятся таблица Рауса (матрица Гурвица) с выделением цветом оснований для заключения об устойчивости, т.е. отрицательных определителей матрицы или элементов первого столбца таблицы. Все графики могут быть выведены в файл, в буфер или на печать с выбором разрешения изображения, имеется возможность нанесения подписей и оцифровки шкалы. Прилагаемая справка поясняет отдельные опции программы на основе базовых положений теории автоматического регулирования. 6.3 Основы MATLAB MATLAB – открытая система, состоящая из основной части и пакетов расширения [23-27], предназначенных для решения научных, технических или математических задач. Система может расширяться и за счет функций пользователя, реализованных в виде текстовых исходных модулей программ (файлов с расширением .m). При первом запуске программы количество открытых окон превышает необходимое и на начальных этапах работы рекомендуется использовать только командное окно (Command Window). Для этого следует выбрать опцию в меню Desktop-Desktop Layout-Command Window Only. Вид диалогового окна программы упрощается. Остальные окна можно вызвать позднее: либо по отдельности, установив флажки (птички) против названий в меню, либо все сразу с помощью опции Desktop-Desktop Layout-Default (вид по умолчанию). Возможно использование окон Command History (журнал команд), Current Directory (используемая папка), Workspace (рабочее пространство или база данных, хранящая все сведения о переменных и объектах текущей сессии, может быть сохранена и вызвана повторно). Команда Clear очищает окна Command Window, Command History и Workspace, она же обнуляет значения переменных пользователя и восстанавливает значения по умолчанию системных переменных. Через меню FilePreferences задаются основные характеристики общения MATLAB с пользователем, например, параметры шрифта, формат вывода и т.п. По ходу вычислений все записи в командном окне смещаются вверх и становятся неактивными, т.е. их можно скопировать, но нельзя уже исправить и запустить повторно. Активной является лишь строка с приглашением >>, справа от которого мигает курсор. По ходу 153 сеанса программа ведет журнал операций (Command History), откуда использованные ранее команды можно вызывать повторно. Вставлять команды в рабочую строку можно и скопировав их из какого-либо текста, например, отчета по лабораторной работе, сохраненного в формате MS Word. Общая справка вызывается командой help, справка по конкретной функции или оператору командой help имя_функции. Основной режим работы программы MATLAB – прямые вычисления (режим интерпретатора). Минимальный рабочий элемент – комплексная матрица, размеры массивов и тип данных можно не указывать. Обработка производится по строкам, в одной строке допускается несколько операторов, разделенных запятой или точкой с запятой, перенос длинной строки осуществляется знаком троеточия ... Если в конце строки нет точки с запятой, сразу выводится результат или значение описанной переменной (выражения). Числа выводятся в нескольких форматах по выбору (по умолчанию Short), вычисляется всегда 16 значащих цифр в диапазоне от 10 -308 до 10308. При выводе может быть выбран интервал между строками (по умолчанию Loose). Различаются прописные и строчные символы, функции вводят строчными буквами. Клавиши управления курсором вверх-вниз вызывают предыдущие операции (строки) по журналу команд, клавиши управления влево-вправо позволяют перемещаться по командной строке. Команда вводится нажатием клавиши Enter при любом положении курсора в командной строке. Программа использует системные переменные и константы – величины с собственным именем (идентификатором), значения которых предустановлены: ans – переменная, которой присваивают последний результат, если для него не указано имени; результат последней операции без знака присваивания (его можно использовать в выражениях, пока не произошло изменение); eps – относительная точность числа с плавающей точкой, равна -52 2 =2.2204e-016; pi – число π = 3.14159265358979; realmin – наименьшее вещественное число 2-1022 = 2.2251e-308; realmax – наибольшее вещественное число 21022 = 1.7977e+308; Inf – бесконечность (Infinity); NaN – не число (Not a Number), неопределенность (результат операций типа 0/0 или Inf-Inf и т.д.); i, j – обозначения мнимой единицы 1 . Ввод комплексного числа производится в форме a = -1+0.3i, a = -1+0.3j или a = -1+ i*0.3, a=-1+j*0.3. 154 Значения системных переменных могут быть переопределены в пределах одной сессии и восстановлены командой clear, например >> realmin ans = 2.2251e-308 >> realmin=0.1 realmin = 0.1000 Особые символы: >> – приглашение к работе; % – предваряет комментарий; '(апостроф) – кавычки для текста или строковых переменных; точка – разделитель десятичной части дробного числа; точка с запятой – отменяет немедленный вывод результата; [ ] – назначить, например P=[1 2 3 4] – назначить коэффициенты полиному Р, обозначение векторов и матриц; ( ) – от аргумента (используя), например, вычислить корни roots(P); { } – выделение подсистем, групп однотипных массивов; = – знак присваивания; пробел и запятая – объединение (конкатенация) по горизонтали; Enter и точка с запятой – объединение (конкатенация) по вертикали, например, при задании матрицы A = [1 2; 3 4]. Функция – это слово (имя) со скобками, в которых записываются аргументы функции, т.е. величины, от которых зависит результат, возвращаемый функцией. Оператор обозначает действие, которое необходимо проделать. Например, оператор disp печатает запись справа от него, как текст, функция disp() позволяет показать результат без присвоения его значения переменной аns: >> disp 2-7 2-7 >> disp(2-7) -5 Оператор format устанавливает текущее значение интервала между строками при выводе (loose – больше, compact – меньше) и способ вывода чисел: short – 5 цифр с фиксированной точкой; short е – 5 цифр с плавающей точкой; long – 15 цифр при двойной, 7 цифр при одинарной точности с фиксированной точкой; long е – то же с плавающей точкой; short g, long g – то же, с выбором наилучшего способа представления. Форма format rat определяет вывод чисел в виде рациональной дроби с целыми числителем и знаменателем, например >> format rat >> pi 155 ans = 355/113 Использование оператора format без дополнений восстанавливает первоначальные установки. Не во всех случаях использование оператора приводит к изменению способа вывода чисел, в частности, функция damp() имеет свой собственный неизменный формат вывода. Операторы и функции проверки отношений: == или eq() равно; ~= или ne() не равно; > или gt() больше; < или lt() меньше; >= или ge() не менее; <= или le() не более. Если отношение выполняется, результатом является логическая 1, если не выполняется – нуль: >> eq(2,5) ans = 0 >> eq(2,2) ans = 1 >> 2==2 ans = 1 Арифметические операторы и функции: + или plus() сложение; - или minus() вычитание, uplus() и uminus() – присвоение знака плюс (минус) числу; * или mtimes() умножение; / или mrdivide() деление слева направо, например, 2/5 = 0.4; \ или mldivide() деление справа налево, например, 2\5 = 2.5; ^ или mpower() возведение в степень; () изменение порядка вычислений. Логические операторы и функции: & или and() И; | или or() ИЛИ; ~ или not() НЕ; xor() ИСКЛЮЧАЮЩЕЕ ИЛИ; any() истина, если хотя бы один элемент массива не ноль; all() истина, если все элементы массива не ноль. Тригонометрические функции – приведем лишь некоторые, справку по остальным можно получить командой help elfun (элементарные функции): 156 sin() и sind() синус угла, заданного в радианах и градусах; asin() и asind() угол по его синусу, возвращается в радианах и градусах; cos() и cosd() косинус угла, заданного в радианах и градусах; acos() и acosd() угол по его косинусу, в радианах и градусах; tan() и tand() тангенс угла, заданного в радианах и градусах; atan() и atand() угол по его тангенсу, в радианах и градусах; atan2() выводит результат для всех четырех квадрантов комплексной плоскости в радианах при вводе двух аргументов. Экспоненциальные функции: exp() степень натурального числа е; log() натуральный логарифм; log10() логарифм по основанию 10; log2() логарифм по основанию 2; pow2() степень двух, например, pow2(3) = 8; sqrt() квадратный корень, например, sqrt(-4) = 0 + 2.0000i; realpow() степень действительного числа; reallog() натуральный логарифм действительного числа; realsqrt() корень квадратный из неотрицательного числа; nthroot() корень n-ой степени из вещественного числа. Функции округления и вычисления остатков: fix() округление к нулю; floor() округление к минус бесконечности; ceil() округление к плюс бесконечности; round() округление к ближайшему целому; mod() остаток от деления с учетом знака аргументов; rem() остаток от деления; sign() знак числа. Функции обработки данных: max() максимальный элемент массива (и его индекс); min() минимальный элемент массива (и его индекс); mean() среднее значение элементов вектора; median() срединное значение элементов вектора; sum() сумма элементов вектора или колонок матрицы; prod() произведение всех элементов вектора (вектор-строка произведений элементов колонок матрицы); Особенностью применения функций в MATLAB является то, что возвращаемый результат зависит от числа передаваемых параметров и вида обращения, например, возможны plot(y), plot(x, y) и plot(x1,y1,x2,y2). Обычно выводится столько элементов результата из 157 разрешенного количества, сколько аргументов перечислено в квадратных скобках левой части равенства – по умолчанию при отсутствии левой части выводится лишь первый элемент из возможного количества, либо график. Встроенные функции и операторы могут вести себя не совсем обычно с учетом того, что минимальным элементом MATLAB является комплексная матрица, а матрицы и массивы здесь не одно и то же. 6.4 Специальные операторы и функции В операциях с комплексными числами используются: real() выделение действительной части числа, [Re]=real(a); imag() выделение мнимой части числа, [Im]=imag(a); abs() модуль числа Re 2 Im 2 ; angle() аргумент числа, arctg(Im/Re), в радианах, от - до + (аналог функции ATAN2); conj(a) комплексная сопряженная к a величина (тот же результат образуется применением сопряженного транспонирования a’); complex(a,b) композиция комплексного числа a + jb из двух вещественных чисел; cplxpair(v) сортировка элементов вектора комплексных чисел v по возрастанию значения действительных частей. Многочлены вида a1xn + a2xn-1 + … + an+1 вводятся своими коэффициентами P = [a1 a2 … an+1] через пробел или запятую в порядке убывания степени переменной как вектор (обратите внимание на индексы коэффициентов, первый индекс равен единице, ни один коэффициент не пропускается). Возможные действия с полиномами: + или plus(P1, P2) cложение полиномов (действие выполняется лишь при совпадении размера векторов-полиномов); - или minus(P1, P2) вычитание полиномов (действие выполняется только при совпадении размера векторов-полиномов); conv(P1, P2) умножение полиномов (операция свертки); deconv(P1, P2) деление P1 на P2; при указании левой части производится деление с вычислением остатка [Q, R]=deconv(P1, P2), где Q – частное, R – полином остатка; roots(P) вычисление корней полинома Р; poly(R) построение полинома по вектору корней R; poly(A) построение характеристического полинома матрицы А вида P(s)=det(s∙1-A), здесь 1 – единичная матрица; polyval(P,x) значение полинома Р при заданной переменной x; polyder(P) значение коэффициентов производной от полинома. 158 Векторы задаются как вектор-строка V=[1 2 3], вектор-столбец V=[1; 2; 3] и вычисляемый вектор. Последнему соответствуют: - линейная прогрессия V=1:0.1:10 – в примере от 1 до 10 с шагом 0.1 (шаг по умолчанию равен единице V=1:10); - логарифмический масштаб V=logspace(-2,2,100) – от 10-2 до 102, всего 100 точек. Если число точек не указано, по умолчанию оно принимается равным 50. Векторизация позволяет отказаться от использования циклов. Например, создадим таблицу логарифмов от 1 до 2 с шагом 0.1 >> x=(1:0.1:2)'; >> logs=[x log10(x)] % формируем вектор-столбец аргументов Ввод матрицы производится по строкам A=[1 2 3;4 5 6;7 8 9] или поэлементно A(1,1)=1; A(3,3)=9 или A(1)=1; A(2)=4; A(9)=9 (одиночный индекс отсчитывается по столбцам). Первый индекс указывает строку, второй – столбец, начальный индекс 1. Размер устанавливается автоматически по последнему введенному элементу, не обозначенные элементы внутри установленной размерности автоматически обнуляются >> w(2,4)=-1.234 w = 0 0 >> w(8) ans = -1.2340 0 0 0 0 0 -1.2340 Задав блоки v1=[1 2], v2=[3 4], можно образовать матрицу из них А=[v1;v2]. Часть матрицы описывается через индексы с помощью двоеточия, например, A(1:k,j). Слово End обозначает последний столбец (строку). В MATLAB легко изменяются размеры матриц удалением (добавлением) строк или столбцов. Так, использование пустой (Empty) матрицы (вектора) A(:,2)=[ ] удаляет все элементы второго столбца матрицы А, при этом число столбцов уменьшается на единицу. Открыв окно Workspace и дважды щелкнув мышью имя массива, можно вызвать редактор массивов Array editor, в котором быстро модифицируются данные любой ячейки выбранного массива. Здесь же, использовав инструмент Plot Selection, по данным массива можно построить один из видов графиков (plot, bar, imagesc, contour и т.д.). В MATLAB формируются и вычисляются: zeros(n) нулевая матрица размера n; eye(n) единичная матрица размера n; ones(n) матрица размера n из одних единиц; diag(A) вектор-столбец из элементов главной диагонали матрицы A, либо диагональная матрица из вектора-столбца А; 159 A' комплексно сопряженное транспонирование матри- цы A; compan(Р) сопровождающая к полиному Р матрица; det(A) определитель матрицы А; trace(A) след матрицы А (сумма элементов главной диагонали); rank(A) ранг матрицы А; poly(A) характеристический полином матрицы А; eig(A) вектор-столбец собственных значений матрицы А; inv(A) обратная к А матрица. Размер вектора (матрицы) позволяют определить функции size() и length(): >> a=[1 2 3]; >> size(a) ans = 1 3 >> length(a) ans = 3 Функции fliplr() и flipud() позволяют отразить (повернуть) матрицу или вектор соответственно относительно вертикальной и горизонтальной осей. Плюс, минус и звездочка (mtimes) применяются как операторы сложения, вычитания и умножения матриц, за размерами должен следить сам пользователь. При сложении матрицы и скалярной величины последняя добавляется ко всем элементам матрицы. Операция возведения в степень (mpower) выполняется, если основание – матрица, а степень – скаляр, либо наоборот. Операция деления матриц справа обозначается mrdivide или /, операция деления слева mldivide или \ . Решить систему линейных уравнений можно несколькими способами: x=A^(-1)*b, или так x=inv(A)*b, либо так x=A\b, причем матрицы А и b могут быть комплексными. Арифметические операции на массивах в MATLAB производятся поэлементно, т.е. только суммирование и вычитание для массивов выполняется так же, как для матриц. Форма остальных операторов для массива дополняется точкой, отличаются и имена функций: .* или times() поэлементное умножение; ./ или rdivide() поэлементное деление; .\ или ldivide() поэлементное левое деление; .^ или power() поэлементное возведение в степень; .' или transpose() несопряженное матричное транспонирование. Сравним возведение в степень А как матрицы и как массива 160 А = 1 2 3 4 » А^2 ans = 7 10 15 22 » А.^2 ans = 1 4 9 16 Символьная математика (дополнительно к элементарным и специальным функциям): simplify() упрощение символьной формулы; expand() раскрытие скобок; factor() разложение выражения или числа на множители; collect() приведение подобных членов; simple() поиск минимальной формы записи с выводом всех возможностей; numden() раздельный вывод числителей и общего знаменателя с целыми коэффициентами; subs() подстановка известных значений символьных переменных в указываемое выражение; solve() решение алгебраических уравнений в символическом виде; dsolve() решение дифференциальных уравнений в символическом виде; digits(D) целая D определяет точность численных вычислений (по умолчанию равна 32 разрядам); diff() дифференцирование символьного полинома (может определяться k-я производная по указанной переменной); compose() составление общей формулы из отдельных путем подстановки; fourier() преобразование Фурье; laplace() преобразование Лапласа; ifourier() обратное преобразование Фурье; ilaplace() обратное преобразование Лапласа; double() преобразование символьного объекта в численный с выводом результата двойной точности; single() преобразование символьного объекта в численный с выводом результата одинарной точности; poly2sym() преобразование вектора-многочлена в символическую запись; 161 sym2poly() преобразование символического многочлена в вектор-многочлен; sym создание символического объекта; syms упрощенная форма создания такого объекта; vpa() вывод символьных вычислений в численном виде; pretty() печать функции в виде, близком к общепринятой записи математических выражений. Большинство численных операций с многочленами и матрицами работоспособно и в символьной математике, хотя имеются и отличия. Так, для вычисления корней многочлена в символьной форме используется не roots(), а solve(), правда, лишь до четвертой степени >> solve('a*x^2+b*x+c') ans = 1/2/a*(-b+(b^2-4*a*c)^(1/2)) 1/2/a*(-b-(b^2-4*a*c)^(1/2)) 6.5 Графические средства MATLAB Программа содержит как средства для построения стандартных графиков, используемых при исследовании систем управления, так и средства реализации нестандартных замыслов пользователя. К первым следует отнести LTI Viewer – графический анализатор для линейных непрерывных систем, функционирующий совместно с пакетом расширения Control System Toolbox (рисунок 86). Рисунок 86 Вызов ltiview(sys1,sys2,...,sysN) открывает окно анализатора с выведенной по умолчанию переходной характеристикой системы, отображаемой сплошной линией. Для нескольких систем цвет линии выбирается по порядку перечисления в списке из последовательности 162 b (синий), g (зеленый), r (красный), c (голубой), m (лиловый), y (желтый), k (черный). Имеется возможность специально указать в форме строковой переменной цвет, тип линии и вид маркера отдельно для каждой системы, например, ltiview(sys1,'r-*',sys2,'m--'), где тип линии обозначается соответственно символами: сплошная “-“, пунктирная “:”, штрихпунктирная “-.”, прерывистая “--“. Вид маркера задается символом соответственно: точка “.”, круг “о”, икс “х”, плюс “+”, звездочка “*”, квадрат “s”, ромб “d”, пятиугольник “p”, шестиугольник “h”, уголок вниз “v”, вверх “^”, влево “<”, вправо “>”. Поскольку символы не совпадают, порядок их указания в строковой переменной безразличен. Если в строковой переменной пропущен тип линии, она не чертится и график выполняется только маркерами в расчетных точках. Обращение ltiview(plottype,sys1,sys2,...,sysN) конкретизирует вид графика plottype, который задается в виде одной или нескольких строковых переменных и выбирается из следующего списка: 1) 'step' Step – переходная характеристика; 2) 'impulse' Impulse – импульсная характеристика; 3) 'bode' Bode – диаграмма Боде (ЛЧХ); 4) 'bodemag' Bode Magnitude – ЛАЧХ; 5) 'nyquist' Nyquist – годограф Найквиста; 6) 'nichols' Nichols – диаграмма Николса; 7) 'sigma' Singular value – график сингулярных значений; 8) 'pzmap' Pole/Zero – карта нулей и полюсов; 9) 'iopzmap' I/O Pole/Zero – карта проходных нулей и полюсов; 10) ‘lsim’ реакция на произвольное воздействие 11) ‘initial’ реакция на начальные условия. Так, команда ltiview({'step';'nyquist'},sys1,sys2) строит переходную характеристику и АФЧХ двух систем с согласованным масштабом. Для некоторых видов графиков (lsim, initial) необходимы специальные дополнения, приводимые в конце списка аргументов, например, ltiview('lsim',sys1,sys2,u,t,x0). Опция контекстного меню Grid формирует масштабную сетку, опция Properties вызывает редактор свойств графика с закладками Labels (заголовки), Limits (пределы), Units (единицы измерения), Style (стиль отображения), Characteristics (параметры). Содержание закладок определяется видом графика, однако, как правило, в закладке Label можно задать название графика и подписи к осям координат; в закладке Limits – пределы измерения по каждой из осей, что позволит более внимательно исследовать часть графика, либо оставить масштаб на усмотрение компьютера, выбрав Auto-Scale; в закладке Style можно отрегулировать цвет осей и сетки, шрифт надписей. 163 Перечисленные в списке функции могут быть использованы независимо от LTI Viewer для построения стандартных графиков, в этом случае сразу выводится окно Figure, в рамках которого переход посредством контекстного меню к другим видам графиков невозможен. Основной функцией для построения нестандартных двумерных графиков является функция plot(), придерживающаяся стандартов, описанных выше для графического анализатора, при задании цвета Color, типа линии LineStyle и ее ширины LineWidth, вида маркеров и их размера MarkerSize. Для любого массива вещественных данных при обращении plot(y), будет построен график с использованием по оси абсцисс (горизонтальной) количества точек. Если же Y является комплексной величиной, то ее действительные значения откладываются по оси абсцисс, мнимые – по оси ординат. При обращении plot(x,y), где x и y векторы одинаковой длины, значения элементов x откладываются по оси абсцисс, значения элементов y – по оси ординат (вертикальной). При условии равенства длины векторов-результатов в качестве аргументов могут быть использованы функции, например, plot(t,cos(t)). Аргументами функции могут быть обе матрицы, либо сочетания вектор-матрица, матрицавектор, от соотношения количества их строк и столбцов будет зависеть число и вид выводимых в одном окне графиков. Так, команды t=0:0.1:5; plot(t,[sin(t); cos(t)]) строят две зависимости одновременно. Совмещение при построении в одном окне нескольких графиков с независимым управлением цветом и типом линий обеспечивается формой обращения plot(x1,y1,’s1’,x2,y2,’s2’), где каждая тройка аргументов должна содержать данные для оси абсцисс Х, оси ординат Y, и может содержать строковую переменную S с параметрами линии. При обращении одинаковые данные для оси абсцисс должны все равно повторяться в каждой тройке (двойке) аргументов plot(x,y1,x,y2,'k--'). Помимо строковой переменной, установка дополнительных параметров линии возможна и с использованием принципов объектноориентированного программирования. Так, построение графика линией шириной (LineWidth) 2 пункта темно красного цвета (Color) обеспечивает команда plot(x,y,'linewidth',2,'color',[.6 0 0]), использующая соответствующие свойства линии как объекта. Цвет задается в стандарте RGB вектором [красный зеленый синий] с пределами уровня по каждому оттенку 0.0-1.0, вычисленному по отношению значения цвета в палитре RGB к максимальному значению 255. Управление масштабом графика и видом осей координат производится функцией и оператором axis. Масштаб для текущего графического окна задается в форме axis([x1,x2,y1,y2]) и может быть получен 164 в виде вектора v из четырех элементов командой v = axis. Режим отображения осей mode в команде axis mode выбирается из списка: auto – устанавливается по умолчанию, пределы по осям выбираются так, чтобы график не касался границ окна; tight – график точно вписывается в окно; equal – устанавливает одинаковый масштаб изображения по обеим осям, что соответствует реальному виду графика; square – устанавливает одинаковый размер изображения по осям независимо от масштаба; normal – отменяет действие двух предыдущих команд; off – удаляет все вспомогательные построения, сохраняя только график; on – отменяет действие предыдущей команды. Добавочные команды: clf – очистка текущего графического окна во избежание наложения нового изображения на старое; hold on/off – оставляет открытым текущее графическое окно (on) для вывода в него следующих графических объектов или закрывает его (off), оператор hold без дополнительного параметра действует как переключатель, т.е. осуществляет переход в противоположный режим; box on/off или просто box – переключатель вида рамки окна; subplot(m,n,p) – выделяет несколько графических окон в виде элементов матрицы размером m на n, отсчитывая номер окна слева направо, сверху вниз построчно. Например, subplot(2,2,3) объявляет текущим левое окно снизу из четырех возможных; title(’txt’), xlabel(’txt’), ylabel(’txt’) используют заданный текст в качестве заголовка окна, оси Х, оси У. Функция text(x,y,’txt’) размещает текст в графическом окне от точки с физическими координатами xmin<x<xmax, ymin<y<ymax, функция text(’txt’) ждет для размещения текста выбора позиции мышью и щелчка левой кнопкой, функция legend() создает прямоугольник с поясняющими подписями. Все эти функции и функции нанесения линий, стрелок на график доступны в режиме редактирования фигуры из меню Insert или кнопкой Edit plot. При проблемах с русскими шрифтами в XP рекомендуется в ветви реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage установить значения кодовых страниц 1250 = "C_1251.nls", 1252 = "C_1251.nls", либо в названиях избегать использования русских символов «с» и «я». Все возможности функции plot() имеются и у функций loglog(), semilogx(), semilogy(), которые отличаются тем, что строят графики в логарифмическом масштабе соответственно по обеим осям, по оси Х, по оси У. Функция plotyy() строит график с обозначениями оси У как слева, так и справа. Основные формы обращения: plotyy(x1,y1,x2,y2) – пара х1, у1 для левой оси ординат, пара х2, у2 для правой; вызов в форме plotyy(x1,y1,x2,y2,fun) уточняет способ построения графика, например, plotyy(x1,y1,x2,y2,@loglog) или plotyy(x1,y1,x2,y2,'loglog'), из списка plot, semilogx, semilogy, loglog. Если указаны две функции 165 plotyy(x1,y1,x2,y2,fun1,fun2), то fun1(x1,y1) строит график для левой оси У, а fun2(x2,y2) предназначена для правой оси ординат. К области специальной графики относятся функции: polar(Phase, Mag) – построение в полярных координатах зависимости модуля вектора Mag от его угла Phase (рад); compass(U, V) – построение в полярных координатах векторной диаграммы по проекциям U (ось абсцисс) и V (ось ординат). Каждый вектор отображается стрелкой из начала координат, U и V могут быть наборами данных для нескольких векторов; contour() – построение линий равного уровня в пространстве двух параметров по предварительно сформированной сетке. fplot(f,[a,b]) – построение графика функции f в интервале (a, b). Командой ezplot() осуществляется построение графика символьной функции, которая может быть задана непосредственно именем ezplot(eq2,x1,x2), либо как строковая переменная ezplot(‘sin(x)’). Пределы изменения переменной х1 и х2 могут указываться без квадратных скобок, если это целые числа, либо в квадратных скобках в ином случае; если они не указываются, программа использует значения по умолчанию. При исследовании двух функций одной переменной f1(x) и f2(x) график использует первую из них для организации изменения по оси Х, вторую – по оси У. Диапазон изменения переменной х может быть указан специально ezplot(f1,f2,[xmin,xmax]), либо оставлен на усмотрение программы ezplot(f1,f2), тогда 0 < x < 2. Для функции двух переменных f(x,y)=0 возможны обращения: ezplot(f,[xmin,xmax,ymin,ymax]) при разных пределах изменения x и y; ezplot(f,[a,b]) – при изменении обеих переменных в диапазоне от a до b. В данном случае в описание функции не включают ноль и знак равенства, так как программа их ставит автоматически, поэтому функцию нужно приводить к соответствующему виду. Например, вместо записи ‘x^2+y^2=1’ следует вводить ‘x^2+y^2-1’. Первые по порядку пределы указываются для переменной, встречающейся в описании функции также первой, независимо от ее имени. 6.6 Программирование в MATLAB Основные виды структур управления потоками в MATLAB: оператор if (elseif, else) end проверки выполнения условий; оператор switch (case, otherwise) end выбора исполняемого действия; операторы цикла for …end и while … end; оператор break – позволяет досрочно выйти из того блока for или while, в котором он встречается; оператор return – досрочный выход из тела функции. 166 Как только написан первый оператор блока, выполнение в прямом режиме приостанавливается до ввода оператора конца блока End. Цикл for повторяет действия заданное число раз, например for i=1:m for j=1:n H(i,j)=1/(i+j); end end при этом может быть указан шаг изменения for i=1:0.1:2, в том числе отрицательный for i=1:-0.1:0. По умолчанию шаг равен 1, если условие цикла не выполняется, цикл не выполняется ни разу. (Внимание! Переменные i и j являются системными, они отведены под указание мнимой единицы, поэтому следует внимательно относиться к их использованию в прямом режиме во избежание переопределения). Оператор Switch осуществляет выбор действия по условию, выполняется только первый соответствующий случай. Выбор альтернативных путей алгоритма функционирования осуществляется операторами nargin и nargout, проверяющими соответственно число входных и выходных переменных. Функция pause останавливает выполнение программы до нажатия пользователем любой клавиши с выводом сообщения Paused: Press any key, вариант вызова pause(n) формирует задержку выполнения на n секунд с автоматическим возобновлением операций, причем n может быть дробным числом с точностью 0.01. Для вывода сообщения об ошибке или предупреждения используются функции error(‘текст’) с прекращением выполнения программы или warning(‘текст’) с его продолжением. Программирование в MATLAB удобно рассмотреть на примере реализации алгебраических критериев Гурвица и Рауса в виде mфайлов, позволяющих многократно использовать готовые функции. Встроенных функций расчета критериев Рауса и Гурвица система MATLAB не имеет. Для редактирования следует открыть редактор (Editor) опцией меню File-New-M-File. Создадим пользовательскую функцию routh(), формирующую из n коэффициентов полинома матрицу r размером n x m, где m = n/2 при четном n и m = (n+1)/2 при нечетном n. Первые строки комментариев после заголовка функции, начинающиеся символом %, обычно выводятся на экран при запросе справки по функции, например, help routh. Прекращается их вывод пустой строкой. Операторы в одной строке разделяются символом «;», этот же символ в конце строки отменяет немедленный вывод результата на экран. Функция length() позволяет найти длину вектора (количество коэффициентов полинома) n, которая и определит число строк в таб- 167 лице. Число столбцов m получим с помощью функции округления round(). Применив функцию zeros(), создадим нулевую матрицу размером n на m. Символ двоеточия в MATLAB позволяет указывать целиком строку, столбец матрицы, задавать числовой вектор его начальным, конечным значением и шагом (если величина шага не указана, по умолчанию она равна единице), либо крайними индексами элементов и шагом. Учитывая изложенное, запишем порядок вычисления первой и второй строки таблицы [28]. n=length(p); m=round(n/2); r=zeros(n,m); r(1,:)=p(1:2:n); r(2,1:fix(n/2))=p(2:2:n); Функция fix(), отбрасывающая дробную часть числа, позволяет соблюсти требования равенства размеров присваиваемого и читаемого векторов для четного и нечетного n при формировании второй строки таблицы Рауса. Задача программирования расчета остальных элементов таблицы облегчается в MATLAB тем, что векторная форма задания изменения переменной освобождает порой даже от необходимости записывать сам цикл (например, как это сделано для переменной j). for i=3:n j=1:m; r(i,j)=r(1-2,j+1)-r(i-1,j+1)*r(i-2,1)/r(i-1,1); end Цикл в MATLAB начинается словом for и заканчивается словом end, аналогично формируется блок проверки условия if … end (без слова then). Осталось предусмотреть случай, когда в первом столбце оказывается нулевой элемент r(i-1,1), на который делить нельзя. Рекомендуется вместо нуля принять в этом случае очень маленькую положительную величину и продолжать вычисления. Воспользуемся для этого имеющейся в MATLAB константой realmin, которая и является минимально возможным действительным числом 2.2251е-308. den=r(i-1,1); if den==0 den=realmin; end Обратите внимание на то, что в MATLAB символ «=» соответствует присваиванию, а равенство записывается двойным таким символом. Результат, полученный при использовании созданной функции routh() для оценки устойчивости полинома P(x)=x6 + 2x5 + 3x4 + 4x3 + 5x2 + 6x + 7, нельзя считать удовлетворительным. 168 >> p=[1 2 3 4 5 6 7]; >> routh(p) ans = 1 3 5 2 4 6 1 2 7 0 -8 0 Inf 7 0 -8 0 0 NaN NaN NaN 7 0 0 0 0 0 0 Здесь Inf – обозначение бесконечности, эта величина может иметь знак и не мешает анализу устойчивости, тогда как NaN (не число, неопределенность), величина, получающаяся при операциях вида умножения бесконечности на ноль, отношения двух нулей и т.п., не способствует правильности анализа. В силу этого введем вторую проверку – если элемент r(i-2,1) равен бесконечности Inf, что и ведет к появлению NaN, заменяем его на очень большое число realmax, равное 1.7977е+308, сохраняя знак бесконечности nom=r(i-2,1); if abs(nom)==Inf nom=realmax*sign(nom); end Повторим расчет для полинома p >> routh(p) ans = 1 3 2 4 1 2 0 -8 Inf 7 -8 0 7 0 5 6 7 0 0 0 0 7 0 0 0 0 0 0 Для большинства полиномов работа функции в таком виде будет удовлетворительной. Однако следует учесть и специальный случай, вызываемый наличием пар комплексных корней, одинаковых по величине, но разных по знаку. Найдем корни такого полинома и применим к нему созданную функцию >> p=[1 3 ans = 1.0000 1.0000 -1.0000 -1.0000 -2.0000 -1.0000 8 18 37 75 50]; roots(p) + + - 2.0000i 2.0000i 2.0000i 2.0000i 169 >> routh(p) ans = 1 8 3 18 2 12 0 0 12 50 0 0 50 0 37 75 50 0 0 0 0 50 0 0 0 0 0 0 У полинома имеется два правых корня 1±j2, однако в первом столбце полученной таблицы Рауса отсутствуют отрицательные элементы, что приводит к неверному заключению. Признаком рассматриваемого случая является строка, в которой все элементы нулевые (четвертая сверху). Предложено [16] заменять нулевой ряд производной полинома, составленного из коэффициентов предшествующей строки, в частности, по следующим формулам ri 1,1 (n i 1) ri ,1 ; ri 1, 2 (n i 1) ri , 2 ; ri 1, 3 (n i 3) ri , 3 ... Дополним данные формулы условием, что количество значащих коэффициентов в строке должно быть больше одного, это позволит избежать ошибки при наличии нулевого коэффициента в последней или предпоследней строке. if r(i,:)==0 & i<n-1 ni=n+1-i; for j=1:m r(i,j)=r(i-1,j)*ni; ni=ni-2; end end Теперь для того же полинома созданная функция возвращает таблицу с отрицательным коэффициентом в первом столбце, что правильно указывает на неустойчивую систему с двумя правыми корнями характеристического уравнения. >> routh(p) ans = 1.0000 3.0000 2.0000 8.0000 6.0000 -42.6667 50.0000 8.0000 18.0000 12.0000 24.0000 50.0000 0 0 37.0000 75.0000 50.0000 0 0 0 0 50.0000 0 0 0 0 0 0 Ниже приводится текст окончательно записанного файла routh.m, который соответствует функции пользователя, допускающей 170 применение наряду со стандартными функциями системы MATLAB. Вывод по устойчивости системы пользователь делает самостоятельно. function r = routh(p) % Расчет таблицы Рауса % Входной параметр - полином p, выходной - матрица r n=length(p); m=round(n/2); r=zeros(n,m); r(1,:)=p(1:2:n); r(2,1:fix(n/2))=p(2:2:n); m=m-1; for i=3:n den=r(i-1,1); if den==0 den=realmin; end nom=r(i-2,1); if abs(nom)==Inf nom=realmax*sign(nom); end j=1:m; r(i,j)=r(i-2,j+1)-r(i-1,j+1)*nom/den; if r(i,:)==0 & i<n-1 ni=n+1-i; for j=1:m r(i,j)=r(i-1,j)*ni; ni=ni-2; end end end Текст m-файла с реализацией критерия Гурвица приводится без дополнительных пояснений. function r = hurwitz(p) % Расчет определителей и матрицы Гурвица % Входной параметр - полином p, выходной - матрица r n=length(p)-1; % проверка порядка (длины) полинома if n<=1 return; end r=zeros(n); % формирование матрицы Гурвица m = 1; for i = 1:2:n k = 1; for j = m:n if k <= n r(i, j) = p(1 + k); 171 end if k <= n + 1 & i < n r(1 + i, j) = p(k); end k = k + 2; end m = m + 1; end for i=1:n % вычисление диагональных миноров Determinants(i)=det(r(1:i,1:i)); end Determinants % вывод значений определителей end При обращении к функции указывается полином, функцией возвращаются значения определителей 1..n-порядка и матрица Гурвица. Вывод по устойчивости системы пользователь делает самостоятельно. >> k=[1 2 3 4 1]; >> hurwitz(k) Determinants = 2 2 4 ans = 2 4 0 1 3 1 0 2 4 0 1 3 4 0 0 0 1 Если разработанные пользователем m-файлы будут находиться в рабочей папке Work, программа при вызове будет загружать их автоматически. 6.7 Математические модели систем управления Структура системы управления может быть описана в командном окне (Command Window) программы, либо сформирована в конструкторе-симуляторе Simulink. Пакет расширения Control System Toolbox поддерживает следующие LTI-модели линейных непрерывных систем (Linear Time-Invariant system): пространство состояний (SS), передаточную функцию (TF), описание посредством нулейполюсов-усиления (ZPK) и частотных характеристик (FRD). MIMO-модель многомерной системы в пространстве состояний (State Space) формируется функцией ss() по матрицам коэффициентов собственных A, входов B, выходов C, обходов D, или модели системы W, заданной иным образом. sys=ss(a, b, c, d) sys=ss([0 1;-2 -3],[0; 0; 1],[3.12 0 0],[0]) sys=ss(w) 172 Это основная (рекомендуемая) модель для систем управления в MATLAB. Матрицы описания системы в пространстве состояний могут быть получены обращением [a, b, c, d]=ssdata(sys), при этом не обязательно, чтобы система была SS-моделью. SISO-модель одномерной системы в виде передаточной функции (Transfer Function) формируется функцией tf() по полиномам числителя Num{erator} и знаменателя Den{ominator}, либо по готовой модели системы sys. По умолчанию для комплексной переменной Лапласа используется обозначение s. >> num=10; >> den=[1 2 3 4]; >> sys=tf(num,den) Transfer function: 10 --------------------s^3 + 2 s^2 + 3 s + 4 Параметры системы, заданной передаточной функцией, могут быть получены (с указанием на векторный характер данных в виде строковой переменной 'v') обращением [num, den]=tfdata(sys, 'v'). Для привыкших обозначать и оператор дифференцирования p ≡ d/dt, и комплексную переменную Лапласа s =σ + jω = α + jβ одинаково символом «p», имеется возможность указать его в качестве основного вместо «s»: >>w=tf(num, den, 'variable', 'p') Transfer function: 10 --------------------p^3 + 2 p^2 + 3 p + 4 Программа позволяет описывать передаточную функцию и в символической форме отношения полиномов от s или р, например s=tf('s'); w=s/(s^2+2*s+10) Модель в виде корней числителя (нулей zero), корней знаменателя (полюсов pole) и общего коэффициента усиления k (Zero-Pole-Gain) передаточной функции формируется оператором zpk. При выводе она отображается в виде отношения произведений полиномов не выше второго порядка, при вводе задается векторами корней. w=zpk(z, p, k) w=zpk(sys) [z, p, k]=zpkdata(sys,'v') – извлечь данные в форме zpk-модели, с обязательной ссылкой на векторный характер данных в виде ‘v’. Пример задания системы триадой нули-полюса-коэффициент (отсутствующим нулям соответствует пустая матрица, в знаменателе действительный корень -2 и комплексная пара корней -1±j3, коэффициент усиления равен 5). 173 >> w=zpk([],[-2, -1+3i, -1-3i],5) % формирование ZPK модели Zero/pole/gain: 5 ---------------------(s+2) (s^2 + 2s + 10) >> [z,p,k]=zpkdata(w,'v') % выборка параметров модели z = Empty matrix: 0-by-1 % пустая матрица – нули отсутствуют p = -2.0000 -1.0000 + 3.0000i -1.0000 - 3.0000i k = 5 Если, вызвав командой ltiview(имя_системы) окно графического анализатора, выбрать в контекстном меню графиков тип графика Plot Types-Pole/Zero, для одномерной системы будет выведена карта размещения нулей Zero (кружки) и полюсов Pole (крестики) системы на комплексной плоскости. Аналогичные действия выполняет функция pzmap(имя_системы). Отдельно вычисляет полюса системы функция pole(), нули – функция zero(). Во всех приведенных случаях недостатком является отсутствие сведений о значении общего коэффициента усиления, а следовательно, неоднозначное описание системы. Функция dcgain() выводит коэффициенты усиления, но в установившемся режиме, т.е. для записи ПФ с нормированием по свободному члену, и для описанной выше системы выводится не 5, а bm/an = 5/20 = 0.25. >> dcgain(w) ans = 0.2500 Функции преобразования модели tf2zpk() и tf2zp() рассчитывают значения нулей, полюсов и коэффициента усиления по известным числителю и знаменателю ПФ, отличаясь друг от друга способом вывода матрицы нулей; функция zp2tf() производит обратное преобразование от ZPK-модели к описанию передаточной функцией. >> num=[1 2]; den=[1 2 3 4]; w=tf(num, den); ww=zpk(w) Zero/pole/gain: (s+2) ---------------------------------(s+1.651) (s^2 + 0.3494s + 2.423) >> [z,p,k]=tf2zp(num,den) z = -2 p = -1.6506 -0.1747 + 1.5469i -0.1747 - 1.5469i 174 k = 1 >> [nums,dens]=zp2tf(z,p,k) nums = 0 0 1 2 dens = 1.0000 2.0000 3.0000 4.0000 Использовать функцию tf2zpk() не рекомендуется, так как обратное преобразование по выведенному ею вектору нулей приводит к неверному формированию числителя ПФ (коэффициенты оказываются смещенными в сторону старших степеней), что иллюстрирует пример, следовательно, по таким значениям числителя и знаменателя будет ошибочно создана совсем другая система. >> [z,p,k]=tf2zpk(num,den) z = 0 0 -2 p = -1.6506 -0.1747 + 1.5469i -0.1747 - 1.5469i k = 1 >> [nums,dens]=zp2tf(z,p,k) nums = 1 2 0 0 dens = 1.0000 2.0000 3.0000 >> tf(nums,dens) Transfer function: s^3 + 2 s^2 --------------------s^3 + 2 s^2 + 3 s + 4 4.0000 Модель, заданная в виде экспериментально полученных частотных характеристик (Frequency Response Data model), формируется функцией frd() по значениям вещественной и мнимой составляющих комплексного отклика K(jω) на заданных значениях вещественных неотрицательных частот freqs, измеряемых по умолчанию в рад/c. sys=frd(response, freqs) sys=frd(sys, freqs) [response, freqs]=frdata(sys) В последнем случае для табуляции функции автоматически выбирается 200 частот, записываемых в вектор freqs. Можно перейти на отсчет частоты в герцах, если при обращении указать соответствующие единицы измерения sys=frd(response, freqs,'Units','Hz'). 175 >> [yf,fr]=freqs(num,den); ww=frd(yf,fr) From input 1 to: Frequency(rad/s) output 1 ----------------------0.010000 0.133339+0.001022i 0.010353 0.133339+0.001058i 0.010718 0.133339+0.001096i ... ... 9.642880 0.021834-0.102662i 10.000000 0.020276-0.099063i Continuous-time frequency response data model. Это модель низшего уровня, она позволяет строить, в основном, стандартные частотные характеристики (bode, bode magnitude, nyquist, nichols, singular value, margins, sigma) и не преобразуется в другие формы моделей. Описание звеньев дифференцирующего (порядок m числителя больше порядка n знаменателя) и чистого запаздывания (трансцедентного звена) имеет особенности. При формировании ПФ дифференцирующего и форсирующих звеньев необходимо указывать единицу в качестве знаменателя передаточной функции TF-модели >> w=tf([1 0],1) Transfer function: s >> forse=tf([1 2 3],1) Transfer function: s^2 + 2 s + 3 % дифференцирующее звено % форсирующее звено второго порядка Используя iodelay, inputdelay и outputdelay свойства LTIобъектов, можно вводить чистую задержку (Transport Delay) без специальных звеньев, причем независимо для каждой пары входов/выходов системы. Так, в частности, создается непрерывная TFмодель многомерной системы с передаточными функциями 0.1s 2 0.3 s s 1 e e s s 10 , H ( s) s 1 e0.2 s 10 s5 или модель в пространстве состояний x (t ) Ax(t ) Bu (t ) , y (t ) Cx(t ) Du (t ( )), имеющая задержку τ между входом и вектором состояний, задержку θ между вектором состояний и выходом. Воспользоваться свойствами iodelay, inputdelay, и outputdelay можно как в процессе создания моде- 176 ли посредством функций tf, zpk, ss или frd, так и позднее с помощью команды set или приемов объектно-ориентированного программирования. Суммарную задержку системы находит функция totaldelay(sys). В качестве примера опишем одномерную (SISO) модель нагревателя с названием «A simple heater model» (рисунок 87), имеющую задержку 0.3 с, вход «energy» и выход «temperature». Рисунок 87 Зададим основные свойства системы при ее создании, а имена входа, выхода и общий комментарий присвоим позднее командой set. >> sys = tf(1,[1 1],'inputdelay',0.3); >> set(sys,'inputname','energy','outputname','temperature',... 'notes','A simple heater model') Рассмотрим также в виде иллюстрации описание системы с разными длительностями задержек для каждой пары вход/выход 12.8e1s X D ( s) 16.7 s 1 X ( s ) 6.6 e 7 s B 10.9 s 1 18.9e3 s 21.0 s 1 R(s) . 19.4e3 s S ( s) 14.4 s 1 После ввода всех параметров >> H = tf({12.8 –18.9;6.6 –19.4},... {[16.7 1] [21 1];[10.9 1] [14.4 1]},... 'iodelay',[1 3;7 3],... 'inputname',{'R' , 'S'},'outputname',{'Xd' , 'Xb'}) получаем результирующую TF модель многомерной системы Transfer function from input "R" to output... 12.8 Xd: exp(–1*s) * ---------16.7 s + 1 6.6 Xb: exp(–7*s) * ---------10.9 s + 1 Transfer function from input "S" to output... –18.9 Xd: exp(–3*s) * -------21 s + 1 –19.4 Xb: exp(–3*s) * ---------14.4 s + 1 177 Для определения групповых (одинаковых) задержек моделей TF, ZPK или FRD удобнее использовать свойства inputdelay и outputdelay. Например, при описании системы 1 H ( s) s e0.1s 2 s 1 командами >> s = tf('s'); >> H = [1/s ; 2/(s+1)]; >> H.inputdelay = 0.1 % рациональная часть формируется модель с одинаковыми задержками на всех входах Transfer function from input to output... 1 #1: exp(–0.1*s) * s 2 #2: exp(–0.1*s) * ----s + 1 Если же использовать в подобных случаях свойство iodelay, необходимо указывать задержку отдельно для каждого пути >> H = [1/s ; 2/(s+1)]; H.iodelay = [0.1 ; 0.1]; Функция pade() вычисляет рациональную аппроксимацию чистой задержки для непрерывных LTI-моделей. При обращении [num, den] = pade(τ, n) она возвращает Паде-аппроксимацию n-го порядка задержки exp(-τ*s) на время τ в виде передаточной функции. Векторы num и den содержат коэффициенты полиномов числителя и знаменателя, расположенные по убыванию степени s. При отсутствии левой части выражения функция строит переходную и фазовую характеристики приближенной модели и сравнивает их с реакцией звена чистого запаздывания в экспоненциальной форме. s Сформируем звено задержки на время 1 с вида e , используя аппроксимацию Паде второго порядка >> [num, den]=pade(1, 2) num = 1 -6 12 den = 1 6 12 >> wd=tf(num,den) Transfer function: s^2 - 6 s + 12 -------------s^2 + 6 s + 12 178 При обращении sysp = pade(sysd, n) функция заменяет систему sysd с задержками в экспоненциальной форме на систему sysp, в которой задержки выражены дробью в виде аппроксимации Паде n-го порядка. Только после такого преобразования к разомкнутой системе с задержкой может быть применена функция feedback(). Для модели с множественными задержками, либо размещенными разным образом на входах и выходах, используется более сложное обращение sysp=pade(sysd,ni,no,nio), где векторы ni, no и матрица nio определяют порядок аппроксимации независимо для каждого входа (input), выхода (output) и проходной I/O задержки. При отсутствии задержек на входе, выходе или проходных задержек нужно указывать в пропускаемой позиции пустую матрицу [ ]. От системы с задержками, имеющую по два входа и выхода 12.8e 1s H ( s ) 16.7 s7s1 6.6 e 10.9 s 1 18.9e 3 s 21.0 s 1 . 19.4e 3 s 14.4 s 1 перейдем к системе Н без экспоненциальных функций, задав первый порядок аппроксимации Паде для задержек величиной 1 и 3 с, второй порядок аппроксимации Паде для задержки 7 с. >> pade(H,[ ],[ ],[1 1;2 1]) Указанная в списке аргументов Н – это исходная система с задержками в экспоненциальной форме. Новая Н-система не содержит задержек в явном виде, но, тем не менее, воспроизводит их; погрешности воспроизведения зависят от порядка аппроксимации. Размер системы увеличивается на порядок аппроксимации задержки рядом Паде, например, при объекте первого порядка и аппроксимации второго порядка задержки 7 с получается система третьего порядка Transfer function from input "R" to output... –12.8 s + 25.6 Xd: --------------------16.7 s^2 + 34.4 s + 2 6.6 s^2 – 5.657 s + 1.616 Xb: --------------------------------------10.9 s^3 + 10.34 s^2 + 3.527 s + 0.2449 Transfer function from input "S" to output... 18.9 s – 12.6 Xd: ---------------------21 s^2 + 15 s + 0.6667 19.4 s – 12.93 Xb: -------------------------14.4 s^2 + 10.6 s + 0.6667 179 6.8 Структурные преобразования модели В соответствии с определением, передаточная функция (ПФ) системы может быть получена по известным входному воздействию и реакции системы на него, если существует преобразование Лапласа от этих временных функций. Прямое и обратное преобразования Лапласа являются элементами пакета символьной математики, в начале действий необходимо объявить используемые символьные переменные s и t >> syms s t; yt=2.5+2.5*exp(-2*t)-5*exp(-t) yt = 2.5+2.5*exp(-2*t)-5*exp(-t) >> rs=laplace(t^0) % преобразование Лапласа от скачка 1(t) rs = 1/s >> ys=laplace(yt) % преобразование Лапласа от реакции системы ys = 5/2/s+5/2/(s+2)-5/(1+s) >> ws=ys/rs % отношение преобразований Лапласа выхода и входа ws = (5/2/s+5/2/(s+2)-5/(1+s))*s >> w=simplify(ws) % окончательный вид передаточной функции w = 5/(s+2)/(1+s) MATLAB позволяет решить задачу идентификации объекта (построения его модели в виде передаточной функции или описания вход-состояние-выход), если для объекта известен закон изменения входа u(t) и выхода y(t) во времени (обе функции должны быть представлены вектором-столбцом значений одинаковой размерности, поэтому вектор-строка u транспонирован в вектор-столбец) [29]. При создании набора данных da функцией iddata() последним указано значение шага дискретности таблицы по времени ts = 0.01 с. >> da=iddata(y,u',0.01) Time domain data set with 201 samples. Sampling interval: 0.01 Outputs y1 Inputs u1 Unit (if specified) Unit (if specified) По набору da формируется непрерывная (ts = 0) модель методом предсказаний Prediction Error Method в пространстве состояний ‘ss’ с каноническим представлением ‘can’. Программа самостоятельно определяет матрицу К влияния шумов e(t) на входах объекта и вектор начальных условий х0, в дальнейшем SS-модель преобразована в передаточную функцию W(s) = 5/(s+3). >> w=pem(da,'ts',0,'ss','can') 180 State-space model: dx/dt = A x(t) + B u(t) + K e(t) y(t) = C x(t) + D u(t) + e(t) A = x1 x1 -3 x1 u1 5 y1 x1 1 y1 u1 0 x1 y1 8.6974 x1 4.7539e-016 B = C = D = K = x(0) = Estimated using PEM from data set da Loss function 1.58473e-031 and FPE 1.64909e-031 >> sys=tf(w) Transfer function from input "u1" to output "y1": 5 ----s + 3 Составление структурной схемы системы и ее преобразования могут выполняться аналитическим путем в командном окне. Для последовательного соединения звеньев используется знак умножения w1*w2 или функция series(w1,w2). Параллельное соединение звеньев выполняется знаками «+», «-» и функцией parallel(w1,w2). Соединение с обратной связью производится функцией feedback(w1,w2), где звено w1 находится на прямом пути, а w2 в цепи отрицательной обратной связи. Положительная обратная связь должна указываться особо при обращении, например, при установке звена w3 в цепи положительной обратной связи: feedback(w1*w2,w3,+1). Функция append() просто объединяет под одним названием несколько подсистем, оставляя их независимыми, функция sysc = connect(sys,q,inputs,outputs) строит из них объединенную систему sysc с помощью матрицы связей q. Система может быть сформирована по описанию отдельных передаточных функций от всех входов ко всем выходам, например, для системы с входом u и выходами y (первый) и e (второй) – сначала фи- 181 гурные скобки всех числителей, потом то же для всех знаменателей, точка с запятой между ними говорит о вертикальном соединении: >> h=tf({2;[1 4 3]},{[1 4 5];[1 4 5]}) Transfer function from input to output... 2 #1: ------------s^2 + 4 s + 5 #2: s^2 + 4 s + 3 ------------s^2 + 4 s + 5 Без вычислений с символьными переменными не обойтись, если хотя бы один параметр является неизвестной величиной. Кроме того, вычисления с символьными переменными позволяют проследить участие тех или иных параметров в общей функции преобразования. В общем виде MATLAB позволяет выполнять алгебраические действия над передаточными функциями звеньев, как символьными переменными >> syms w1 w2 w3 >> w=w1*w2 w = w1*w2 >> w=w1-w2 w = w1-w2 >> w=times(w1,w2) w = w1*w2 >> w=minus(w1,w2) w = w1-w2 однако специализированные функции serial(), parallel() и feedback() к символьным переменным не применимы. Передаточные функции могут быть выражены в общем виде через коэффициенты усиления и постоянные времени с использованием упомянутых алгебраических операций >> syms s k1 k2 k3 T1 T2 T3 >> w1=k1/(T1*s+1); w2=k2/(T2*s+1); w3=k3/(T3*s+1); >> w=w1*w2+w3 w = k1/(T1*s+1)*k2/(T2*s+1)+k3/(T3*s+1) причем результат можно распечатать в более наглядном виде >> pretty(w) k1 k2 k3 --------------------- + -------(T1 s + 1) (T2 s + 1) T3 s + 1 182 привести выражение к общему знаменателю, с выводом отдельно числителя и знаменателя >> [num,den]=numden(w) num = k1*k2*T3*s+k1*k2+k3*T1*s^2*T2+k3*T1*s+k3*T2*s+k3 den = (T1*s+1)*(T2*s+1)*(T3*s+1) и привести подобные, например, в числителе >> collect(num) ans = k3*T1*s^2*T2+(k1*k2*T3+k3*T1+k3*T2)*s+k1*k2+k3 Можно проделать те же действия, подставив вместо коэффициентов передачи и постоянных времени их численные значения >> w1=1/(0.1*s+1); w2=2/(0.2*s+1); w3=3/(0.3*s+1); >> w=w1*w2+w3 w = 2/(1/10*s+1)/(1/5*s+1)+3/(3/10*s+1) >> pretty(w) 2 3 ------------------------ + ---------(1/10 s + 1) (1/5 s + 1) 3/10 s + 1 >> [num,den]=numden(w) num = 750*s+2500+30*s^2 den = (s+10)*(s+5)*(3*s+10) >> den=expand(den) % Раскрываем скобки в знаменателе den = 3*s^3+55*s^2+300*s+500 Опишем систему, охваченную жесткой отрицательной обратной связью с передаточной функцией k4 звена в цепи ОС. >> w1=1/(0.1*s+1); w2=2/s; w3=3/(0.3*s+1); w4=k4; >> w=(w1+w2)*w3 % прямая связь – разомкнутая система w = 3*(1/(1/10*s+1)+2/s)/(3/10*s+1) >> ww=w/(1+w*w4) % замкнутая система ww = 3*(1/(1/10*s+1)+2/s)/(3/10*s+1)/(1+3*(1/(1/10*s+1)+2/s)/(3/10*s+1)*k4) >> [num,den]=numden(ww) num = 120*(3*s+5)*(s+10)*s*(3*s+10) den = (s+10)*s*(3*s+10)*(3*s^3+40*s^2+100*s+360*k4*s+600*k4) >> n=collect(num); d=collect(den); ww=n/d ww = (1080*s^4+16200*s^3+60000*s^2+60000*s)/(9*s^6+240*s^5+(2200 +1080*k4)*s^4+(8000+16200*k4)*s^3+(10000+60000*k4)*s^2+6000 0*k4*s) 183 >> r=simplify(ww) % упрощаем выражение r = 120*(3*s+5)/(3*s^3+40*s^2+100*s+360*k4*s+600*k4) >> pretty(r) 3 s + 5 120 ---------------------------------------3 2 3 s + 40 s + 100 s + 360 k4 s + 600 k4 Если все параметры системы известны, удобнее строить модель в виде передаточной функции, используя функцию tf() и представление числителя и знаменателя передаточной функции в виде векторов. При этом коэффициенты должны задаваться по убыванию степени переменной s, вместо коэффициента отсутствующей степени обязательно указывается ноль. Эквивалентная ПФ образуется из передаточных функций отдельных звеньев по правилам структурных преобразований, например >> w1=tf(1,[0.1 1]); w2=tf(2,[0.2 1]); w3=tf(3,[0.3 1]) >> w=w1*w2+w3 Transfer function: 0.06 s^2 + 1.5 s + 5 -------------------------------0.006 s^3 + 0.11 s^2 + 0.6 s + 1 >> series(w1,w2) % последовательное соединение Transfer function: 2 -------------------0.02 s^2 + 0.3 s + 1 >> parallel(w1,-w2) % параллельное соединение Transfer function: -1 -------------------0.02 s^2 + 0.3 s + 1 >> feedback(w1*w2,w3) % соединение с обратной связью Transfer function: 0.6 s + 2 -------------------------------0.006 s^3 + 0.11 s^2 + 0.6 s + 7 Затруднения возникают при попытке описать систему с перекрещивающимися связями, когда недостаточно использовать только три основных правила структурных преобразований. В этом случае следует либо самостоятельно получить общую структурную формулу, пользуясь правилом переноса воздействий или правилом Мейсона, либо воспользоваться методом решения узловых уравнений. Для системы (рисунок 88) главная передаточная функция по Мейсону равна 184 W ( s) W1 (s)W2 ( s)W3 (s)W4 (s) . 1 W2 ( s)W3 (s) W3 ( s)W4 ( s) Рисунок 88 Подставляя численные значения коэффициентов и упрощая выражение, получим >> syms s >> w1=2; w2=3/s; w3=1/(s+2); w4=1/(s+3); >> w=w1*w2*w3*w4/(1+w2*w3+w3*w4) w = 6/s/(s+2)/(s+3)/(1+3/s/(s+2)+1/(s+2)/(s+3)) >> w=simplify(w) w = 6/(s^3+5*s^2+10*s+9) Во многих случаях целесообразно перейти от символической записи к записи в виде полиномов-векторов, поскольку ассортимент функций, применимых к символьным выражениям, достаточно ограничен. Для перехода используется функция sym2poly() >> [num,den]=numden(w) num = 6 den = s^3+5*s^2+10*s+9 >> num=sym2poly(num) num = 6 >> den=sym2poly(den) den = 1 5 10 9 >> ww=tf(num,den) Transfer function: 6 -------------------s^3 + 5 s^2 + 10 s + 9 Коэффициенты из символьных констант преобразуются в числовые, что позволяет далее выполнять над объектом различные операции. Структурная формула может быть выражена в общем виде, ко- 185 гда по крайней мере один параметр остается неизвестной переменной, и в числовом виде, когда значения всех параметров известны. Метод узловых уравнений исследуем на примере системы (рисунок 89). Составляем уравнения для сигналов в точках e, f, m, n, y (на выходах блоков или сумматоров, за исключением известных сигналов, т. е. воздействий на входах системы), уравнения в форме 1 разрешены относительно нуля, уравнения в форме 2 разрешены относительно входных воздействий (таблица 7). Рисунок 89 Таблица 7 Исходные уравнения e=-W7 f+W1 r f=W2 e m=W3 f-W8 n+W6 r n=W4 m y=W5 n Форма 1 e+W7f-W1r=0 f-W2 e=0 m-W3 f+W8 n-W6 r=0 n-W4 m=0 y-W5 n=0 Форма 2 e+W7f=W1r f-W2 e=0 m-W3 f+W8 n=W6 r n-W4 m=0 y-W5 n=0 Результатом является сигнал, т.е. реакция системы по выбранному выходу относительно входа r. По умолчанию подразумевается, что правая часть уравнений равна нулю (уравнения в форме 1), при этом знак «равно» и ноль по правилам MATLAB не пишутся. >> syms e f m n y r >> syms w1 w2 w3 w4 w5 w6 w7 w8 >> eq1=e+w7*f-w1*r; >> eq2=f-w2*e; >> eq3=m-w3*f+w8*n-w6*r; >> eq4=n-w4*m; >> eq5=y-w5*n; >> s=solve(eq1,eq2,eq3,eq4,eq5,e,f,m,n,y); >> s.y ans = w5*w4*r*(w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) Можно выбрать в качестве выходного другой сигнал и, соответственно, получить реакцию (произведение входного сигнала на передаточную функцию) для данного выхода. Например, реакции на выходах n и f 186 >> s.n ans = w4*r*(w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) >> s.f ans = w2/(1+w2*w7)*w1*r >> pretty(ans) w2 w1 r --------1 + w2 w7 Решение системы линейных уравнений для определения передаточной функции может быть выполнено, например, методом Крамера. Знаменателем передаточной функции является характеристический полином, т.е. главный определитель матрицы А, включающей коэффициенты левой части уравнений в форме 2. Числитель передаточной функции вычисляется посредством определителя, получаемого из общего определителя системы заменой столбца переменной, считающейся выходом системы, на входной вектор-столбец матричного уравнения b, образованный коэффициентами при входных воздействиях – правой части уравнений в форме 2. >> syms w1 w2 w3 w4 w5 w6 w7 w8 >> A=[1 w7 0 0 0;-w2 1 0 0 0;0 -w3 1 w8 0;0 0 -w4 1 0;0 0 0 -w5 1] A = [ 1, w7, 0, 0, 0] [ -w2, 1, 0, 0, 0] [ 0, -w3, 1, w8, 0] [ 0, 0, -w4, 1, 0] [ 0, 0, 0, -w5, 1] >> b=[w1;0;w6;0;0] b = w1 0 w6 0 0 >> den=det(A) den = 1+w4*w8+w2*w7+w2*w7*w4*w8 >> AA=[A(:,1:4) b] AA = [ 1, w7, 0, 0, w1] [ -w2, 1, 0, 0, 0] [ 0, -w3, 1, w8, w6] [ 0, 0, -w4, 1, 0] [ 0, 0, 0, -w5, 0] >> num=det(AA) num = 187 w4*w6*w5+w2*w7*w4*w6*w5+w2*w3*w4*w1*w5 >> sys=simplify(num/den) sys = w4*w5*(w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) Решая систему линейных уравнений другим методом, получаем сразу матрицу передаточных функций для всех выходов e, f, m, n, y соответственно (матрица А и вектор b описаны выше) >> sys=inv(A)*b sys = 1/(1+w2*w7)*w1 w2/(1+w2*w7)*w1 w3*w2/(1+w4*w8+w2*w7+w2*w7*w4*w8)*w1+1/(1+w4*w8)*w6 w4*w2*w3/(1+w4*w8+w2*w7+w2*w7*w4*w8)*w1+w4/(1+w4*w8)*w6 w5*w2*w4*w3/(1+w4*w8+w2*w7+w2*w7*w4*w8)*w1+w4*w5/(1+w4*w8)*w6 В последней строке матрицы sys получили уже известную передаточную функцию для выхода y относительно входа r. В зависимости от способа решения системы линейных уравнений результат может отличаться по форме (но не по сути), например >> sys=A\b sys = 1/(1+w2*w7)*w1 w2/(1+w2*w7)*w1 (w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) w4*(w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) w4*w5*(w6+w2*w7*w6+w2*w3*w1)/(1+w4*w8+w2*w7+w2*w7*w4*w8) Для системы второго порядка (рисунок 90) уравнения формирования сигналов имеют вид a=-c+W1e; b=-d+W2a; c=W3b; d=W4c. Перенося все слагаемые в левую сторону и отбрасывая согласно правилам MATLAB нуль, решаем уравнения и получаем аналитическое представление сигналов a, b, c и d. Рисунок 90 >> syms e a b c d w1 w2 w3 w4 >> eq1=a+c-w1*e; eq2=b+d-w2*a; eq3=c-w3*b; eq4=d-w4*c; >> sys=solve(eq1,eq2,eq3,eq4,a,b,c,d); >> ya=sys.a ya = (1+w4*w3)*w1*e/(1+w4*w3+w3*w2) >> yb=sys.b yb = w2*w1*e/(1+w4*w3+w3*w2) >> yc=sys.c 188 yc = w3*w2*w1*e/(1+w4*w3+w3*w2) >> yd=sys.d yd = w4*w3*w2*w1*e/(1+w4*w3+w3*w2) или, если сразу заданы выходные аргументы в левой части выражения >> syms e a b c d w1 w2 w3 w4 >> eq1=a+c-w1*e; >> eq2=b+d-w2*a; >> eq3=c-w3*b; >> eq4=d-w4*c; >> [ya,yb,yc,yd]=solve(eq1,eq2,eq3,eq4,a,b,c,d) ya = (1+w4*w3)*w1*e/(1+w4*w3+w3*w2) yb = w2*w1*e/(1+w4*w3+w3*w2) yc = w3*w2*w1*e/(1+w4*w3+w3*w2) yd = w4*w3*w2*w1*e/(1+w4*w3+w3*w2) Найдем решение, сформировав матрицу А коэффициентов при переменных a, b, c, d и вектор-столбец коэффициентов при e. >> A=[1 0 1 0;-w2 1 0 1;0 -w3 1 0;0 0 -w4 1] A = [ 1, 0, 1, 0] [ -w2, 1, 0, 1] [ 0, -w3, 1, 0] [ 0, 0, -w4, 1] >> b=[-w1;0;0;0] b = w1 0 0 0 >> sys=A\b sys = w1*(1+w4*w3)/(1+w4*w3+w3*w2) 1/(1+w4*w3+w3*w2)*w2*w1 w3/(1+w4*w3+w3*w2)*w2*w1 w4*w3/(1+w4*w3+w3*w2)*w2*w1 Подставив значения передаточных функций, а затем значения параметров, получим в конечном итоге численное выражение передаточной функции >> syms s k1 k2 T1 T2 >> w1=k1; w2=k2; w3=1/(T1*s+1); w4=1/(T2*s+1); >> Wbe=subs(sys(2)) % подставляем обозначения коэффициентов Wbe = 1/(1+1/(T2*s+1)/(T1*s+1)+1/(T1*s+1)*k2)*k2*k1 189 >> k1=1; k2=0.1; T1=0.2; T2=2; >> Wben=subs(Wbe) % подставляем числовые значения коэффициентов Wben = 1/10*(2*s+1)*(1/5*s+1)/(2/5*s^2+12/5*s+21/10) >> [num,den]=numden(Wben); >> num=sym2poly(num); % преобразуем символьную запись в числовую >> den=sym2poly(den); >> Wben=tf(num,den) % формируем стандартную TF-модель Transfer function: 2 s^2 + 11 s + 5 -------------------20 s^2 + 120 s + 105 Если значения передаточных функций или их параметров были уже известны к моменту команды на решение уравнений, они подставляются автоматически и необходимость в специальном применении функции подстановки subs() отпадает. Все рассмотренные положения можно применить к описанию структурной схемы в виде ориентированного графа, произведя замены: входной сигнал – входной узел, выходной сигнал – выходной узел, блок – ветвь, сигнал – узел. 6.9 Визуальное моделирование Рассмотрим другой путь и предоставим вычислить ПФ компьютеру – обратимся к системе Simulink. В среде Simulink структурная схема системы регулирования составляется с помощью готовых условных графических обозначений (УГО) из библиотеки программы. Для этого нужно открыть рабочее поле опцией File-New-Model и каталог библиотеки кнопкой Simulink (в командном окне) или Library Browser (в окне конструирования модели). Достаточно перетащить мышью нужное количество блоков Передаточная функция (Transfer Fcn – раздел Continues), Усилитель Gain, интегратор Integrator и Сумматор Sum (раздел Commonly Used Blocks) из окна элементов в окно конструирования и составить структурную схему системы, соединяя их входы и выходы. При соединении узла и входа блока начинать соединительную линию лучше с входа. Соединительные линии можно подписать, используя названия сигналов или имена переменных состояния, окно для подписи открывается двойным щелчком на линии, перетаскивается относительно линии. Командами Flip и Rotate в контекстном меню Format можно изменить ориентацию блока в пространстве. Стандартные названия блоков следует поменять на желаемые, открыв поле двойным щелчком. Выделив с помощью левой кнопки мыши фрагмент схемы или схему целиком, их можно перетащить на новое место, скопировать или удалить. 190 В Simulink основной моделью является пространство состояний, а в нем не могут быть заданы отдельно дифференцирующие и любые иные звенья с m > n, поэтому предварительно их следует совместить с соседними звеньями, у которых m < n. Открывая двойным щелчком левой кнопки или правой кнопкой мыши свойства элемента (Block parameters), задают численные величины. Коэффициенты полиномов записывают в виде векторов в квадратных скобках, последовательно, начиная с коэффициента при старшей степени s, разделяя пробелами или запятыми (саму переменную s не пишут). Если в изображении блока видны не все коэффициенты или они заменены надписью типа den(s), нужно увеличить видимый размер блока (растянуть прямоугольник). Аналогично, открыв свойства сумматора, у инвертирующего входа заменяют плюс на минус (рисунок 91). Входы сумматора размещаются симметрично относительно левой середины, вертикальная черта соответствует неиспользуемому входу. Например, ++| означает расположение входов посередине и сверху, |+- означает неинвертирующий вход посередине, инвертирующий снизу, +|+ означает по одному входу сверху и снизу. Рисунок 91 Звено чистого запаздывания (Transport Delay) моделируется в Simulink приближенно разложением в ряд Паде. При составлении схемы в свойствах типового блока необходимо указать время задержки τ (секунд) и обязательно порядок разложения n. При нулевом порядке, который выставлен по умолчанию, коэффициент передачи звена равен 1 и задержка отсутствует, независимо от того, какая величина ее была установлена. Не забывайте привести к единому масштабу все временные параметры модели (постоянные времени, величины задержки, коэффициенты передачи), они должны задаваться в секундах. Готовую схему можно испытать, подключив на ее входы источники сигналов (Sources), а на выходы – отображающие средства (Sincs), и сохранить в виде файла с расширением .mdl (по умолчанию – в рабочую папку). Однако более эффективно подключить к входам и выходам системы блоки вход (In1) и выход (Out1) из библиотеки элементов Commonly Used Blocks. Тогда, вызвав через меню ToolsControl Design-Linear Analysis (Инструменты-Проектирование систем 191 управления-Линейный анализ) окно Control and Estimation Tools Manager, командой Linearize Model (Заимствовать модель) можно передать численные параметры математической модели системы графическому анализатору. В его окне LTI Viewer: Linearization Quick Plot по умолчанию будут построены переходные характеристики. Чтобы передать параметры модели в базу данных (рабочее пространство – WorkSpace) программы MATLAB следует, вызвав посредством меню File-Export диалоговое окно LTI Viewer Export, после двойного щелчка мышью задать имя своей модели в графе Export As, а затем командой Export to WorkSpace передать данные и закрыть три последних окна, не сохраняя проект. Кроме того, если к системе подключены блоки вход (Input) и выход (Output), параметры системы в виде матриц A, B, C, D можно определить с помощью обращения [a, b, c, d] = linmod('имя_модели'), после чего получить описание в пространстве состояний функцией ss(a, b, c, d). Обращение [num, den] = linmod('имя_модели') позволяет получить векторы коэффициентов числителей и знаменателей передаточных функций линеаризированной модели системы. На назначение номеров узлов (индексов переменных состояния) влияет то, в каком порядке помещаются блоки на схему. В схеме (рисунок 92) интеграторы, а, следовательно, и переменные состояния, назначались с конца, от выхода Out1, классическим методом. Рисунок 92 В результате получено описание системы в пространстве состояний вида >> [a,b,c,d]=ssdata(sys1) a = 0 1 -3 -2 b = 0 1 c = 192 1.5000 0.5000 d = 0 Поменяв местами блоки Integrator и Integrator1, получили модель с иным порядком индексов переменных – начиная от входа In1. >> [a,b,c,d]=ssdata(sys2) a = -2 -3 1 0 b = 1 0 c = 0.5000 1.5000 d = 0 Таким образом, только за счет выбора порядка расстановки блоков с s в знаменателе получили прямую и инверсную канонические управляемые формы описания системы в пространстве состояний. 6.10 Моделирование временных характеристик Используя созданную модель, можно получить ее основные характеристики во временной области – переходную функцию (Step Response), импульсную функцию (Impulse Response), реакцию на начальные условия (Response to Initial Conditions) и разложение на простые дроби (Residue). Расчет временных характеристик выполняется в аналитическом виде и численно, с построением графиков. Команда ctrlpref вызывает окно Control System Toolbox Preferences, в котором можно определить для стандартных графиков единицы измерения (Units), формат подписей и осей (Style), зону ошибки Δ и способ оценки времени нарастания (Characteristics), параметры программы проектирования регулятора для одномерных объектов (закладка SISO Tool). Переходную характеристику строит функция step() или, по умолчанию, графический анализатор ltiview(имя_системы). Вы можете установить отличительный цвет, тип линии и/или вид маркера для каждой системы при сравнительном построении нескольких характеристик на одном графике. Например, система 1 – сплошная красная (red) линия, система 2 – штриховая зеленая: step(sys1,'r',sys2,'g--'). Скопировать график в другой документ можно, выбрав в LTIView опцию File-Print to Figure, а в окне Figure опцию Edit-Copy Figure. Опция контекстного меню Normalize вписывает все характеристики в графическое окно независимо от масштаба для их наилучшего обзора. 193 Если схема собрана в Simulink, переходную характеристику можно увидеть на экране осциллографа Scope, подключив ко входу системы блок Constant и задав в нем необходимую величину (1 для переходной характеристики, произвольное значение – для кривой разгона). Но лучше использовать для этого блок Step, в свойствах последнего можно установить не только величину сигнала (Initial-Final Value), но и момент его формирования (Step Time). Для пуска симуляции служит кнопка Start Simulation на панели инструментов, там же можно задать общее время моделирования процесса. Следует учесть, что при несоответствии масштаба Scope иногда кажется, что реакция отсутствует. В этом случае следует попробовать изменить масштаб графика опцией AutoScale или выбором пределов в Axes Properties. Использовав в контекстном меню графика команды Plot TypesImpulse, получим импульсную (весовую) характеристику системы, обозначаемую обычно w(t) или g(t). Если вызывать эту и другие характеристики не через графопостроитель ltiview(), а отдельной функцией, например, impulse(sys), выводится сразу рисунок (Figure). Вычисление реакции на начальные условия функцией initial() производится в MATLAB только при описании системы в пространстве состояний матрицей передаточных функций для вектора начальных условий x0, который, например, у системы четвертого порядка должен включать четыре независимых величины. Так, реакция многомерной системы sys на начальные условия x1(0)=1; x2(0)=0; x3(0)=0; x4(0)=0 определяется командами >>x0=[1 0 0 0]; initial(sys,x0), grid Не следует забывать, что начальные значения вектора состояний х(0) задаются внутри системы, а не на ее выходах, т.е. без учета матрицы с. Кроме того, в MATLAB переменные состояния обычно назначаются от входа, поэтому первой в традиционном понимании переменной у(0) здесь будет соответствовать n-ая, т.е. последний элемент вектора х0. При задании начальных значений переменных состояния следует тщательно разобраться с тем, как присвоила индексы переменным состояния программа. Более или менее уверенным в индексах переменных состояния можно лишь при самостоятельном визуальном моделировании системы по реальной структурной схеме. Реакцию системы в аналитическом виде (оригинал) по ее изображению Лапласа можно найти с помощью функции residue(), задав полиномы b, a числителя и знаменателя рациональной дроби изображения самостоятельно, либо получив их из модели. Функция residue выводит значения вычетов в полюсах (коэффициентов числителей), полюсов и свободной части разложения на простые дроби. Вычеты 194 (элементы вектора r) печатаются в том же порядке, в каком выводятся полюса (вектор p) – первый сверху вычет соответствует первому полюсу, т.е. корню характеристического уравнения, и т.п. Пользуясь таблицей соответствий оригиналов и их изображений по Лапласу, можно составить оригинал для действительного полюса λ с вычетом α exp( t ) , и для комплексной пары полюсов и вычетов (здесь , – действительная и мнимая части вычета, , – аналогичные части полюса) j 2 exp t cos( t ) sin( t ) . j Плюс перед записывается при несовпадении знака мнимой части у соответствующих друг другу вычета и полюса. Коэффициенты для кратных полюсов выводятся в порядке возрастания кратности, т.е. сначала коэффициент и полюс в степени 1, затем в степени 2 и так до максимальной степени корня. В качестве примера найдем коэффициенты разложения для функции 5/(s+1)^3 >> [r,p,k]=residue(5,[1 3 3 1]) r = 0 0 5 p = -1.0000 -1.0000 -1.0000 k = [] Напомним, что оригинал подобного разложения должен быть записан по таблице соответствия в виде 0∙e-t + 0∙t∙e-t + 5/2∙t2∙e-t. Обращение [num, den]=residue(r, p, k) позволяет восстановить по разложению на простые дроби вид изображения, например, проверить правильность вычисления коэффициентов числителей простых дробей, если они выполнялись не в среде MATLAB. Отсутствующее значение k должно вводиться при этом в виде пустой матрицы. Заметим, что элемент вектора k будет ненулевым при равенстве степеней полиномов числителя и знаменателя изображения. Имея аналитическую запись оригинала, можно рассчитать и построить временную характеристику, например, организовав цикл типа 195 FOR … END в интервале времени от 0 до tуст для заданного количества точек (время tуст следует взять из переходной характеристики). Длинную формулу можно продолжить на другой строке, прервав знаком троеточия. Внимание! Вместо матричного умножения используется поэлементное перемножение массивов, обозначаемое точкой перед знаком умножения. Найдем оригинал передаточной функции с помощью разложения на простые дроби и обратного преобразования Лапласа. Коэффициенты числителей и корни знаменателей разложения на простые дроби находим, определив числитель b и знаменатель a ПФ Wyr(s) >> [b,a]=tfdata(wyr,'v'); >> [r,p,k]=residue(b,a) r = 0.0023 + 0.0001i 0.0023 - 0.0001i -0.0023 - 0.0258i -0.0023 + 0.0258i p = -5.2523 + 5.2380i -5.2523 - 5.2380i -0.2477 + 0.4596i -0.2477 - 0.4596i k = [ ] Расчет значений оригинала в интервале 0-tуст (25 с) с шагом 0.1 с и построение графика для двух пар комплексных сопряженных полюсов >>t=0:0.1:25; >>y= ... 2*exp(-5.2523*t).*(0.0023*cos(5.238*t)-0.0001*sin(5.238*t))+... 2*exp(-0.2477*t).*(-0.0023*cos(0.4596*t)+0.0258*sin(0.4596*t)); >>plot(t,y), grid; title('Оригинал передаточной функции') Оригиналом передаточной функции является импульсная функция, поэтому полученная характеристика по виду и числовым значениям должна совпадать с импульсной. Наконец, в MATLAB с помощью функции lsim() возможен расчет реакции системы на воздействие произвольной формы, заданное отсчетами (матрица u) в течение интервала времени (вектор t). Число столбцов матрицы u должно быть равно числу входов системы, вектор t формируется с равномерным шагом. Приведем пример построения графика реакции системы sys с единственным входом на гармоническое воздействие sin(t) в течение 5 секунд. >> t = 0:0.01:5; u = sin(t); lsim(sys,u,t) 196 Сравним на графике изменение во времени переменных состояния х1 … х3 и выхода y системы sys, описанной SS-моделью (рисунок 93). В соответствии с нумерацией переменных программа строит первый график синим цветом, второй – зеленым, третий – красным и т.д. >> >> >> >> >> >> sys=ss([0 1 0;0 0 1;-4 -3 -2],[0; 0; 1],[2 0 0],0); t=0:0.1:30; u=t.^0; % формируем воздействие в виде единичного скачка [y,t,x] = lsim(sys,u,t); plot(t,y,t,x),grid; title('Переходный процесс') xlabel('Время, с') Рисунок 93 Форма и численные значения графика y(t) будут соотноситься с графиками переменных состояния так, как это определяет матрица с. В данном случае выход формируется только переменной состояния х1 и амплитуда реакции в два раза выше согласно коэффициенту с(1) = 2. Очевидно, что при с = [1 1 0] будет выполняться y(t) = x1(t) + x2(t). Реакция одновременно на начальные условия и вынуждающее воздействие требует формы обращения lsim(sys,u,t, x0) и вычисляется только в пространстве состояний. Наличие левой части выражения отменяет построение графика: при обращении y = lsim(sys,u,t,x0) вычисляется матрица y, размер которой определяется числом отсчетов и выходов системы; при обращении [y,t,x] = lsim(sys,u,t,x0) вычисляется дополнительно матрица х значений переменных состояния в точках отсчета времени. Напомним, что график может быть получен и с помощью графического анализатора ltiview(‘lsim’,sys,u,t,x0). Вычисление свободной составляющей вызывает трудности при задании начальных условий в традиционном виде начальных значений рассогласования у(0), скорости y (0) и ускорения y (0), т.е. показателей, фиксируемых на выходе системы. Для использования функции 197 lsim() в подобном случае следует преобразовать вектор y(0) в вектор х(0), разделив его на элемент матрицы с, соответствующий переменной состояния, назначенной на выходе системы (остальные элементы матрицы с должны быть нулевыми). Пусть заданы начальные условия y(0) = -1.5, y (0) = 75. С учетом особенностей MATLAB формируем вектор y(0) в обратном порядке и преобразуем его в вектор х(0). >> num=5; den=[0.048 0.4 10]; % задаем ПФ системы >> y0=[75 -1.5]; >> [a,b,c,d]=tf2ss(num,den); % переход к канонической форме >> sys=ss(a,b,c,d) a = x1 x2 x1 -8.333 -208.3 x2 1 0 b = u1 x1 1 x2 0 c = x1 x2 y1 0 104.2 d = u1 y1 0 >> x0=y0/104.2 x0 = % приведенные начальные значения переменных состояния 0.7198 -0.0144 >> lsim(sys,u,t,x0); Расчет упрощается, если система задана в наблюдаемом представлении (с единственной единицей в матрице с), тогда преобразования начальных значений не требуется. Чтобы избежать указанных затруднений, разработаны функции dtoy() и xsim(), предназначенные для расчета только свободного движения и совокупного переходного процесса по передаточной функции системы. Функция dtoy(den,x0) по характеристическому полиному и начальным значениям выходной величины системы позволяет получить график свободной составляющей, либо полином числителя ее изображения N0(s). function[num0,y0,t0]=dtoy(den,x0) % Расчет свободной составляющей по знаменателю ПФ [m,n]=size(x0); if m>n % перевести вектор-столбец в вектор-строку x0=x0';n=m; end for i=1:n % расчет числителя изображения Yсв(s) 198 num(i)=sum(x0(1:i).*fliplr(den(1:i))); end w=tf(num,den); % формирование изображения Yсв(s) if nargout==0 % если требуется только построить график impulse(w); title('Свободная составляющая'); ylabel('Yсв(t)');xlabel('Время') else num0=num; [y0,t0]=impulse(w); end Результат использования созданной функции (рисунок 94). >> >> >> n0 den=[0.048 0.4 10]; x0=[-1.5 75]; [n0]=dtoy(den,x0) = -0.0720 3.0000 % возможен вывод числителя Yсв(s) и таблицы отклика >> [n0,y0,t0]=dtoy(den,x0); >> dtoy(den,x0) % без левого аргумента выводится график Св ободная состав ляющая 4 3 Yсв(t) 2 1 0 -1 -2 0 0.5 1 1.5 Время (sec) Рисунок 94 Для расчета произвольного переходного процесса, включающего вынужденную и свободную составляющие, системы, заданной в виде передаточной функции, разработана функция xsim(), являющаяся аналогом функции lsim(). function[y,t]=xsim(w,u,t,x0) % Расчет произвольной реакции системы [num,den]=tfdata(w,'v'); [m,n]=size(x0); if m>n % перевести вектор-столбец в вектор-строку 199 x0=x0';n=m; end for i=1:n % расчет числителя изображения Yсв(s) n0(i)=sum(x0(1:i).*fliplr(den(1:i))); end w0=tf(n0,den); y0=impulse(w0,t); yt=lsim(w,u,t); y=y0+yt; if nargout==0 % если нет левых (выходных) аргументов plot(t,y,'linewidth',2); hold on; plot(t,yt,'--k',t,y0,':k',t,u,'k'); title('График выходной величины'); xlabel('Время, с'); legend('Y(t)','Yв(t)','Yo(t)','u'); hold off end Таблица значений выходной величины y(t), полученных на заданном массиве t, выводится при обращении y=xsim(w,u,t,x0), в этом случае график не строится. Пример расчета переходного процесса для сложного вынуждающего воздействия и заданных на выходе системы начальных условий с представлением графиков (рисунок 95). >> >> >> >> >> w=tf(5,[0.048 0.4 10]); x0=[-1.5 75]; t=0:0.001:0.5; u=5+100*t.*(t<0.1)+10*(t>=0.1); xsim(w,u,t,x0) График выходной величины 16 Y(t) Yв(t) Yo(t) u 14 12 10 8 6 4 2 0 -2 0 0.1 0.2 0.3 Время, с Рисунок 95 200 0.4 0.5 Для аналитических расчетов используется раздел символьной математики, имеющийся в MATLAB. Символьные переменные должны быть объявлены явно, если при вызове исследуемая функция не взята в апострофы. Объявление производится оператором syms. При преобразовании Лапласа выражение выводится с коэффициентами, представленными в виде рациональных дробей. Сразу же можно построить график функцией ezplot(), задав диапазон изменения времени t и масштабную сетку, график полностью совпадает с импульсной характеристикой от этого же изображения (рисунок 96). >> syms s t >> q=1/(s^3+6*s^2+11*s+6); >> temp=ilaplace(q) temp = -exp(-2*t)+1/2*exp(-3*t)+1/2*exp(-t) >> ezplot(temp,[0,4.5]),grid >> impulse(1,[1 6 11 6]),grid Рисунок 96 Функция dirac(t) в символической математике соответствует единичному импульсу (дельта-функции), а heaviside(t) – единичному скачку. Они функционируют как при прямом, так и при обратном преобразовании Лапласа. >> syms s t >> w=(3*s^2+2*s+1)/(s^2+2*s+2); >> temp=ilaplace(w) % обратное преобразование Лапласа temp = 3*dirac(t)-4*exp(-t)*cos(t)-exp(-t)*sin(t) >> simplify(laplace(temp)) % прямое преобразование ans = (3*s^2+2*s+1)/(s^2+2*s+2) >> q=heaviside(t)+2*exp(-3*t); >> laplace(q) ans = 1/s+2/(s+3) 201 Реакцию на любое воздействие, имеющее преобразование Лапласа, можно определить как произведение ПФ двух блоков, представляющих входное воздействие и систему. Например, на вход системы с ПФ W(s) = (s+1)/(s^2+s+3) поступает сигнал 10e-3t, изображение которого равно R(s) = 10/(s+3). Строим временную характеристику, используя функцию impulse(), поскольку она не вносит дополнительных полюсов или нулей в изображение реакции >> w=tf([1,1],[1,1,3]); r=tf(10,[1,3]); rw=w*r; impulse(rw) Вычислим теперь реакцию системы с ПФ W(s) = 1/(s+7) на произвольную функцию времени x(t) = 5e-0.1t + 0.2t2 аналитически >> syms t s >> xt=5*exp(-0.1*t)+0.2*t^2 xt = 5*exp(-1/10*t)+1/5*t^2 >> xs=laplace(xt) xs = 5/(s+1/10)+2/5/s^3 >> y=xs*1/(s+7) y = (5/(s+1/10)+2/5/s^3)/(s+7) >> r=ilaplace(y) r = -85888/118335*exp(-7*t)+50/69*exp(-1/10*t)-2/245*t+1/35*t^2+2/1715 >> [num,den]=numden(r) num = -85888*exp(-7*t)+85750*exp(-1/10*t)-966*t+3381*t^2+138 den = 118335 Задав вектор отметок времени, можно построить график >> t=0:0.1:30; yt=subs(r); plot(t,yt),grid; title(‘Реакция’) Не всегда выражение, возвращаемое функцией преобразования, приемлемо для дальнейшего использования, например, при достаточно простом изображении получается маловразумительный оригинал >> w=5/(s^3+2*s^2+3*s+4); >> temp=ilaplace(w) temp = 1/4*sum(_alpha*(-1+_alpha)*exp(_alpha*t), _alpha = RootOf(_Z^3+2*_Z^2+3*_Z+4)) Частично в этом случае помогают функция перевода в цифровой формат vpa() и ограничение числа разрядов вычисляемых чисел от 32, используемых по умолчанию, до меньшего значения, например, 4. Разовое применение vpa() к результату >> temp=vpa(temp) temp = 1.0938014797678091851515394567267* exp(-1.6506291914393882188808009674262*t)- ... 202 выводит выражение, которое не приводится здесь целиком в связи с нецелесообразностью полного воспроизведения, его в таком виде сложно даже прочитать. Далее оно преобразовано в уменьшенный цифровой формат, который можно задать и отдельной функцией digits(D), где D – число обрабатываемых разрядов. Однако, поскольку влияние этой команды на последующие операции нежелательно, лучше воспользоваться возможностью временного изменения числа разрядов в самой функции vpa(). Двойное преобразование функцией vpa() обеспечивает эффект уменьшения разрядной сетки для всех чисел, входящих в преобразуемое выражение. >> temp=vpa(temp,4) temp = 1.094*exp(-1.651*t)-1.094*exp(.1747*t)*cos(1.547*t)+1.044*exp(.1747*t)*sin(1.547*t)+.2500*i*(2.087*exp(.1747*t)*cos(1.547*t)+2.188*exp(.1747*t)*sin(1.547*t))+.2500*i*(-2.087*exp(.1747*t)*cos(1.547*t)-2.188*exp(-.1747*t)*sin(1.547*t)) Однако и это выражение содержит семь составляющих переходного процесса, включая даже мнимые, в отличие от трех составляющих, возвращаемых численной функцией residue() и соответствующих 1.0938e-1.6506t -1.0938e-0.1747tcos(1.5469t) + 1.0436e-0.1747tsin(1.5469t). >> [r,p,k]=residue(5,[1 2 3 4]) r = 1.0938 -0.5469 - 0.5218i -0.5469 + 0.5218i p = -1.6506 -0.1747 + 1.5469i -0.1747 - 1.5469i k = [] Еще пример. Приводимое ниже выражение с гиперболическим синусом менее информативно, чем возвращаемый функцией residue() в числовом варианте результат -0.5*exp(-3*t) + 0.5*exp(-t), хотя и полностью ему адекватно. Вдобавок оно включает корень -2, который на самом деле сократился с исключением соответствующей моды из переходного процесса, что может ввести пользователя в заблуждение. >> w=(s+2)/(s^3+6*s^2+11*s+6); >> temp=ilaplace(w) temp = exp(-2*t)*sinh(t) 203 6.11 Моделирование частотных характеристик Используя созданную модель, можно получить ее основные характеристики в частотной области – амплитудно-фазовую характеристику (АФЧХ) или годограф Найквиста (Nyquist Diagram), амплитудную (АЧХ) и фазовую (ФЧХ), действительную (ВЧХ) и мнимую (МЧХ) характеристики, логарифмические характеристики (ЛЧХ) или диаграмму Боде (Bode Diagram), реакцию на моногармонический сигнал. Графики нетиповых функций обычно строят с помощью команды Plot, либо используя команды semilogx() и semilogy() – с логарифмическим масштабом только по оси x или только по оси y, loglog() – с логарифмическим масштабом по обеим осям графика. Необходимые подписи и оси на графике обычно добавляют в режиме редактирования окна Figure через меню Insert, вид графиков корректируют после нажатия кнопки Edit Plot на панели инструментов фигуры. Функция еvalfr позволяет вычислить значение комплексного коэффициента передачи (Frequency Response) системы W(jω) на заданной частоте в виде действительной Real() и мнимой Imag() составляющих, например >> fr=0+j*0.5; % перевод частоты 0.5 рад/с в комплексную >> evalfr(w,fr) % расчет действительной и мнимой частей ans = 0.0723 - 0.0378i а его описание через амплитуду M(ω) и фазу P(ω) вектора можно получить с помощью функций Abs() и Angle(). Для заданного вектора частот отклик вычисляется посредством функции freqresp(имя_системы, диапазон_частот). Диапазон частот можно задавать в виде вектора f = 0:0.1:10, в линейном f = linspace(0,10,100) или логарифмическом f = logspace(-2,2,100) масштабе, причем во всех случаях было задано 100 точек. В первых двух командах – для диапазона частот от 0 до 10 рад/с, в последней команде для диапазона частот от 10^-2 до 10^+2 рад/с. Если число точек не указано, по умолчанию функция logspace() использует 50 логарифмически равномерно распределенных отсчетов. Функция freqs(num,den) строит для предустановленных значений частот амплитудную (в логарифмическом масштабе) и фазную (в градусах) характеристики по числителю и знаменателю ПФ системы. Возможно построение для указанного диапазона частот freqs(num,den,w) или табулирование комплексного отклика y=freqs(num,den,w), [y,w]=freqs(num,den) без графика. Логарифмические амплитудная (ЛАЧХ) и фазовая (ЛФЧХ) частотные характеристики строятся по команде Bode(имя_системы) с сеткой Grid на графике, если необходимо, или выбором опции Plot 204 Types-Bode в графопостроителе ltiview(). При этом ЛАЧХ (Magnitude) вычисляется по формуле L(ω)=20lgA(ω) и измеряется в децибелах (dB), ЛФЧХ (Phase) откладывается в градусах, а частота (Frequency) по оси абсцисс откладывается в рад/с и в логарифмическом масштабе. По команде damp(имя_системы) выводятся величины собственных значений (Eigenvalue) или полюсов системы, соответствующие им значения коэффициента демпфирования или затухания (Damping) и частот сопряжения, а по команде dcgain(имя_системы) – значение коэффициента усиления на нулевой частоте, что бывает полезно при самостоятельном построении ЛАЧХ. Штатные функции bodemag(sys) и sigma(sys) практически одинаково выводят логарифмическую амплитудную характеристику, различаясь заголовками Bode Diagram и Singular Value. Если применить команду plot(real(y),imag(y)) или просто plot(y), то будет построена АФЧХ на комплексной плоскости для заданного диапазона частот по вычисленным значениям комплексного отклика y(jω). АФЧХ также выводится опцией Plot Types-Nyquist в контекстном меню графического анализатора ltiview() или отдельной командой nyquist(имя). Напомним, что MATLAB строит в дополнение к основной кривой в диапазоне частот ω от 0 до плюс бесконечности симметричную ей в диапазоне частот от 0 до минус бесконечности. Для вывода только основной кривой следует в опции Show контекстного меню графика убрать отметку у команды Negative Frequencies (отрицательные частоты), а если не производится оценка устойчивости – у команды Zoom on (-1,0) – масштабировать по точке (-1, j0). Для построения других частотных функций используем функцию передачи W12(s) от входа R(t) к выходу Y(t) многомерной системы управления w33 второго порядка. >> wyr=tf(w33(1,2)) Transfer function from input "w33/R(t)" to output "w33/Y(t)": 1.25 -------------------------------------s^4 + 11 s^3 + 60.5 s^2 + 30.12 s + 15 Вычисляем комплексный коэффициент передачи системы в линейном диапазоне частот от 0 до 5 рад/с (200 точек). >> f=linspace(0,5,200); % задаем вектор частот в линейном масштабе >> for ii=1:200 y(ii)=evalfr(wyr,0+j*f(ii)); % вычисляем вектор комплексного отклика end Совмещаем вещественную (синий цвет – ‘blue’) и мнимую (красный цвет – ‘red’) характеристики на одном графике. Надписи на графике Real(w) и Imag(w) добавлены в режиме редактирования фигуры (рисунок 97). 205 >> >> >> >> >> hold on; plot(f,real(y),'b'); plot(f,imag(y),'r'); title(‘ВЧХ и МЧХ’); grid; hold off % % % % фиксируем графическое окно выводим график ВЧХ синим выводим график МЧХ красным выводим название и сетку ВЧХ и МЧХ 0.1 0.08 0.06 Real(w) 0.04 0.02 0 -0.02 -0.04 -0.06 Imag(w) -0.08 -0.1 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Рисунок 97 Строим в линейном масштабе амплитудную и фазовую характеристики системы в двух окнах одновременно (рисунок 98). Рисунок 98 >> >> >> >> >> subplot(2,1,1); % задаем первое окно plot(f,abs(y)), grid; % рисуем АЧХ title('АЧХ'); ylabel('Амплитуда'); % делаем подписи subplot(2,1,2); % задаем второе окно plot(f,angle(y)*180/pi), grid; % рисуем ФЧХ в градусах 206 >> title('ФЧХ'); ylabel('Фаза, град') В отличие от стандартной диаграммы Боде, выводимой MATLAB, на данном графике по оси ординат откладывается значение амплитуды A(ω), а не двадцать десятичных логарифмов этой величины, а по оси абсцисс – частота в линейном масштабе. Приведем пример построения графика, на котором по оси абсцисс откладывается не частота, а ее десятичный логарифм, т.е. величина, измеряемая в декадах (рисунок 99). Кроме того, оба графика совмещены в одном окне, что позволяет нагляднее установить величины ЛАЧХ при пересечении фазовой характеристики с линией -180 градусов, и ЛФЧХ на частоте среза (при L(ω) = 0). Поскольку легенда здесь не выводит более одного пояснения, указание на характер линии ЛФЧХ введено в поясняющую подпись правой оси ординат – оси ЛФЧХ. Подписи к осям ординат необходимо делать в порядке индексов (1 – левая, 2 – правая), вызывая их поочередно. Рисунок 99 >> >> >> >> >> >> >> >> >> num=[3 2 1]; den=[1 2 3]; f=logspace(-2,2,100); y=freqs(num,den,f); ly=20*log10(abs(y)); phi=angle(y)*180/pi; clf [haxes,hline1,hline2]=plotyy(f,ly,f,phi,'semilogx'); xlabel('log(w)'); title('ЛЧХ'); grid; axes(haxes(1)); ylabel('ЛАЧХ, дБ') axes(haxes(2)); ylabel('ЛФЧХ, град (пунктир)') set(hline2,'linestyle','--','linewidth',2) Амплитудно-фазовая частотная характеристика приводится на рисунке 100, оси, надписи и стрелка на кривой добавлены в режиме редактирования фигуры (учитывая комплексный характер отклика y, можно было использовать более простую форму обращения plot(y)). >> plot(real(y),imag(y)), grid; title ('АФЧХ') 207 АФЧХ 0.02 jIm(w) Re(w) 0 -0.02 -0.04 -0.06 -0.08 -0.1 -0.04 -0.02 0 0.02 0.04 0.06 0.08 0.1 Рисунок 100 При подаче на вход линейной системы моногармонического сигнала отклик системы будет иметь ту же частоту ω, но отличаться по амплитуде в M(ω) раз и по фазе на P(ω) радиан (градусов), где M(ω) – это значение АЧХ, а P(ω) – значение ФЧХ при этой частоте. Реакция на моногармонический сигнал с частотой 0,5 рад/с (рисунок 101). Реакция на моногармонический сигнал 1 0.8 u(t) 0.6 0.4 0.2 y(t) 0 -0.2 -0.4 -0.6 -0.8 -1 0 2 4 6 8 Время, с 10 12 14 Рисунок 101 >> >> >> >> x=evalfr(wyr,0+0.5i); % значение комплексного коэффициента t=linspace(0,14,200); % время от 0 до 14 с (подобрано) u=sin(0.5*t); % входной сигнал с частотой 0.5 рад/с y=abs(x)*sin(0.5*t+angle(x)*180/pi); % выходной сигнал 208 >> hold on; plot(t,y,'r'); plot(t,u,'g'); grid; hold off; >> title('Реакция на моногармонический сигнал'); >> xlabel('Время, с') 6.12 Оценка устойчивости линейных систем Из физического признака устойчивости, требующего стремления с течением времени всех свободных составляющих переходного процесса к нулю, вытекает, что у устойчивой системы установившееся значение импульсной характеристики impulse() или реакции на ненулевые начальные условия initial(sys,x0) должно стремиться к нулю. Для полноты картины все элементы вектора начальных значений х0 следует задать ненулевыми. Математический признак устойчивости линейной системы требует, чтобы все корни характеристического уравнения имели отрицательную действительную часть (все полюса системы были левыми). Применим для расчета корней полинома функцию roots(). >> D=[1 2 ans = -0.0000 -0.0000 -1.0000 -1.0000 3 4 2]; roots(D) + + - 1.4142i 1.4142i 0.0000i 0.0000i Представленная в примере система близка к колебательной границе устойчивости, поскольку ее характеристический полином D(s) содержит корни с практически нулевой действительной частью при остальных левых корнях (минус перед нулевой действительной частью корня говорит о том, что необходимо более точное исследование устойчивости системы – по крайней мере, другой формат вывода). В MATLAB корни характеристического полинома или полюса системы выводят также [p, z] = pzmap(sys), damp(sys), pole(sys) и eig(sys), residue(num, den), tf2zp(num,den). Применение алгебраических критериев устойчивости Гурвица и Рауса было показано в разделе 2. Построение кривой Михайлова в MATLAB не предусмотрено, однако для этого можно воспользоваться существующей функцией nyquist(). Кривая Михайлова строится с тем отличием, что целесообразно самостоятельно задать диапазон частот f (в примере от 0 до 2 рад/с с шагом 0.1) и указать у дроби передаточной функции единицу в качестве знаменателя, поскольку вводится только числитель, равный характеристическому полиному [30]. >> f=0:0.1:2; d=[1 2 3 4 1]; nyquist(d, 1, f) На графике следует убрать кривую для отрицательных частот (рисунок 102) – снять флажок в меню Show-Negative Frequencies. 209 Рисунок 102 Аналогичный результат может быть получен без использования функции nyquist(). Надпись к графику, оси и подписи к ним придется делать самостоятельно, но зато не будет креста в точке (-1,j0). >> d=[1 2 3 4 1]; w=0:0.01:2; f=0+j*w; h=polyval(d,f); >> plot(h),grid; title('Критерий Михайлова') Приводимая далее функция uv() реализует критерий Михайлова (вторую форму) путем вычисления коэффициентов четной и нечетной функций и выводом (если указано в левой части выражения) их корней, т.е. частот пересечения графиков U(ω) и V(ω) с осью абсцисс. function [u,v,ur,vr] = uv(p) % Входной параметр - полином p, выходной - векторы U и V n=length(p);pp=p;p=fliplr(p); m=n-(n~=fix(n/2)*2); k=0;kk=1; for i=1:n if k==2 k=0;kk=kk*(-1); end p(i)=p(i)*kk; k=k+1; end ut=[];vt=[];urt=[];vrt=[]; i=1:2:n; ut(i)=[ut,p(i)]; i=1:2:m; vt(i)=[vt,p(i+1)]; ut=fliplr(ut);vt=[fliplr(vt),0]; urr=roots(ut);vrr=roots(vt); % вычисление корней функций mur=(real(urr)>=0 & imag(urr)==0); % выбор действительных частот mvr=(real(vrr)>=0 & imag(vrr)==0); for i=1:length(urr) % формирование вектора частот четной функции if mur(i)==1 urt=vertcat(urt,urr(i)); end end 210 for i=1:length(vrr) % формирование вектора частот нечетной функции if mvr(i)==1 vrt=vertcat(vrt,vrr(i)); end end if nargout==0 % проверка необходимости строить график w=0:0.01:(max([urt vrt])*1.1); % до максимальной частоты f=0+j*w; h=polyval(pp,f); plot(w,real(h),w,imag(h),'--',w,0,'k.-'), grid; title('Критерий Михайлова (форма 2)'); xlabel('Частота, рад/c'); legend boxoff; % без рамки legend('U(w)','V(w)','location','best') % выбрать место else u=ut;v=vt;ur=urt;vr=vrt; % только вывод полиномов и частот end Результатом обращения к этой функции с указанием выходных аргументов (слева от знака равенства) будет вид четной и нечетной функций, представленных коэффициентами, и их корни (частоты) >> den=[1 2 3 4 5]; [u,v,ur,vr]=uv(den) u = 1 0 -3 0 5 v = -2 0 4 0 ur = [] vr = 0 1.4142 откуда видно, что частот пересечения графиков с осями только две, это 0 и 1.4142 (при построении частотных характеристик мнимые, комплексные и отрицательные частоты отбрасываются, что и делает разработанная функция), причем обе принадлежат нечетной функции V(ω). Средствами MATLAB можно придать стандартный вид четной и нечетной функциям, используя символьную переменную ‘w’ >> u=poly2sym(u,'w') u = w^4-3*w^2+5 >> v=poly2sym(v,'w') v = -2*w^3+4*w График (рисунок 103), построенный с помощью этой же функции, но при обращении без выходных аргументов, подтверждает сделанные выводы – система неустойчива, так как отсутствует поочередное пересечение характеристиками оси частот (чередование корней). 211 Критерий Михайлова (форма 2) 5 0 U(w) V(w) -5 0 0.5 1 Частота, рад/c 1.5 2 Рисунок 103 Универсальная функция nyquist() может использоваться также для оценки устойчивости методом D-разбиения по одному параметру. При этом в качестве аргумента функции задают отношение полиномов от s, получающееся после разрешения характеристического уравнения относительно исследуемого параметра, либо задают в знаменателе 1. Приведем пример исследования влияния на устойчивость системы коэффициента усиления регулятора k, входящего в характеристическое уравнение D(s)= s4 + 2s3 + (k + 3)s2 + (2k + 4)s + (3k + 1)=0. Разрешая уравнение относительно k, получаем дробь k s 4 2 s 3 3s 2 4 s 1 s 2 2s 3 , и строим график (рисунок 104) последовательностью команд >> k=tf([-1 -2 -3 -4 -1], [1 2 3]); nyquist(k) Рисунок 104 Оставляем на графике кривые как для положительных, так и для отрицательных частот. Значения k, соответствующие устойчивости системы, лежат на отрезке действительной оси (Real Axis) между от- 212 метками -0.333 и 0.5, что требует проверки. Подставив значение координаты точки на этом отрезке k = 0 в характеристическое уравнение, убеждаемся, что это действительно область устойчивости, так как все корни уравнения имеют отрицательную действительную часть. >> roots([1 2 3 4 ans = -0.1018 + 1.4711i -0.1018 - 1.4711i -1.4873 -0.3092 1]) Рассмотрим пример D-разбиения по двум параметрам. Для построения методом D-разбиения области устойчивости в пространстве параметров Т и k системы четвертого порядка с характеристическим уравнением D(s)=Ts4 + (2T + 1)s3 + (2T+2)s2 + 2s + k = 0 воспользуемся достаточным условием Δ3 = a3(a1a2 - a0a3) - a12a4 ≥ 0 критерия Гурвица и сформируем по нему функцию Z(T, k), подставив значения параметров. При вычислениях заменяем Т на х и k на y, чтобы не объявлять символьные переменные, поскольку переменные x, y и z MATLAB принимает по умолчанию. Задав пределы изменения постоянной времени 0 ≤ Т ≤ 2 и коэффициента усиления 0 ≤ k ≤ 4 с шагом 0.1, построили с помощью функции contourf() график с залитой зеленым цветом областью устойчивости D(0) (рисунок 105). >> [x,y]=meshgrid(0:0.1:2,0:0.1:4); % сетка значений >> z=2*((2*x+1).*(2*x+2)-x*2)-(2*x+1).^2.*y;% функция % построить контурный график и залить область, выделенную на уровне 0-0 >> [c,h]=contourf(x,y,z,[0 0]); >> set(h,'showtext','on'); % включить печать значений уровней >> title('D-разбиение по двум параметрам'); grid; >> xlabel('Постоянная времени Т'); ylabel('Коэффициент k') D-разбиение по двум параметрам 0 Коэффициент k 4 3 0 0 2 0 1 0 0 0.5 1 1.5 Постоянная времени Т 2 Рисунок 105 График не учитывает требований, вытекающих из необходимых условий устойчивости ai > 0, а именно: Т > 0 – вытекает из требования 213 a0 = T > 0, и k > 0 – обусловлено требованием a4 = k > 0. Эти условия учтены выбором пределов изменения параметров, начиная от нуля. Если необходима оценка устойчивости по Найквисту, то следует задавать для анализа передаточную функцию разомкнутой (OpenLoop) системы, а на графике оценивать положение особой точки с координатами (-1, j0) – АФЧХ неустойчивой в замкнутом состоянии (Closed-Loop) системы охватывает эту точку. АФЧХ выводится опцией Plot Types-Nyquist в контекстном меню графического анализатора ltiview() или отдельной командой nyquist(имя). Напомним, что MATLAB строит в дополнение к основной кривой в диапазоне частот ω от 0 до плюс бесконечности симметричную ей в диапазоне частот от 0 до минус бесконечности. Для вывода только основной кривой следует в опции Show контекстного меню графика убрать отметку у команды Negative Frequencies (отрицательные частоты). При выборе в контекстном меню графика опций CharacteristicsStability Margins в точках, отмеченных маркерами, указываются запасы устойчивости по амплитуде Gain Margin в децибелах, по фазе Phase Margin в градусах, по запаздыванию Delay Margin в секундах и соответствующие им частоты в рад/с, а также дается общая оценка устойчивости системы после замыкания единичной отрицательной обратной связью. Значение Inf говорит о том, что по данному параметру система имеет бесконечный запас устойчивости, отрицательные (в большинстве случаев) или нулевые значения – об отсутствии запасов. Обратите внимание на то, что в СНГ максимальным значением запаса по фазе (100 %) является не бесконечность, а 180°. Если задана уже замкнутая система, передаточную функцию разомкнутой системы можно получить одним из следующих способов: - вычесть соответственно из коэффициентов полинома знаменателя передаточной функции замкнутой системы значения коэффициентов полинома числителя; - разомкнуть систему, созданную в среде Simulink, убрав (Cut) главную обратную связь и подключив к точке разрыва выход Out1, после чего уже известным нам путем передать параметры модели в рабочее пространство MATLAB. Первый способ может применяться только в случае охвата всей системы главной единичной отрицательной обратной связью, второй более универсален. Стандартная АФЧХ разомкнутой системы третьего порядка без нулей проходит по часовой стрелке, начинаясь на положительной действительной оси, столько квадрантов, каков порядок системы (рисунок 106). Она не охватывает точку с координатами (-1, j0), следова- 214 тельно, система в замкнутом состоянии будет устойчивой. Об этом гласит и заключение по каждому из запасов Closed Loop Stable? Yes. Рисунок 106 Запас по модулю Gm (дБ) можно вычислить самостоятельно, по расстоянию от начала координат до точки пересечения АФЧХ с отрезком отрицательной действительной полуоси, равному 0.747. По другому способу запас устойчивости равен расстоянию от критической точки до точки пересечения АФЧХ с указанной полуосью, в данном случае Ам = 0.253 = 1 – 0.747. Запас устойчивости Dm по чистой задержке в секундах можно вычислить, используя значения запаса по фазе Pm и соответствующей ему частоты (с пересчетом в градусы). >> w=tf(3,[1 2 3 2]); ltiview(w) >> Gm=log10(1/0.747)*20 Gm = 2.5336 >> Dm=17.1/1.56/180*pi Dm = 0.1913 % из графика получаем 0.747 Исследуем ту же систему при введенной транспортной задержке 2 с, существенно превышающей показанный на графике допустимый запас 0.192 с. >> set(w,'outputdelay',2); w Transfer function: 3 exp(-2*s) * --------------------s^3 + 2 s^2 + 3 s + 2 Параметры системы изменились настолько (рисунок 107), что она стала неустойчивой, запасы по фазе и модулю отрицательные. Ха- 215 рактерный признак присутствия чистой задержки – закручивание АФЧХ спиралью вокруг начала координат. Рисунок 107 Особенность АФЧХ нейтральной системы, имеющей в разомкнутом состоянии нулевой полюс (рисунок 108) – она начинается в бесконечности и стремится к началу координат. >> w=tf(5,[1 2 3 0]); nyquist(w) Рисунок 108 MATLAB позволяет просмотреть сразу несколько графиков и проанализировать влияние отдельных параметров на устойчивость системы. Например (рисунок 109), при значениях коэффициента усиления разомкнутой системы k = 0.5, 1.0 и 2.0 замкнутая система будет соответственно устойчивой, на границе устойчивости и неустойчивой (объединяем значения коэффициентов фигурными скобками). >> sys=tf({0.5;1;2},[1 2 3 4 1]) Transfer function from input to output... 0.5 #1: ----------------------------s^4 + 2 s^3 + 3 s^2 + 4 s + 1 216 1 #2: ----------------------------s^4 + 2 s^3 + 3 s^2 + 4 s + 1 2 #3: ----------------------------s^4 + 2 s^3 + 3 s^2 + 4 s + 1 >> nyquist(sys) Рисунок 109 Обычная формулировка критерия Найквиста не позволяет сделать заключение о неустойчивости в замкнутом состоянии системы с ПФ w=tf(4,[1 2 3 4 3]) (рисунок 110), так как АФЧХ разомкнутой системы на первый взгляд не охватывает точку с координатами (-1, j0). Nyquist Diagram 2 Imaginary Axis 1 0 -1 -2 -3 -1 0 1 2 3 4 5 Real Axis Рисунок 110 Здесь следует использовать для проверки правило штриховки – при движении по кривой в направлении увеличения частоты (по стрелке) наносят штриховку справа от нее; система устойчива в за- 217 мкнутом состоянии, если критическая точка не попадает в заштрихованную область. Поскольку на графике кривая изменяет направление движения, выворачиваясь наизнанку, штриховка из внутренней области выливается наружу и захватывает критическую точку, система будет неустойчивой. Иногда приходится менять масштаб графика, чтобы проверить устойчивость системы. Так, при автоматическом выводе годографа Найквиста для системы с ПФ w=tf([10 20 30],[1 2 20 20 2 1]) участок с критической точкой практически не просматривается (рисунок 111, а). После изменения масштаба с помощью контекстного меню PropertiesLimits на пределы -10 … 0.5 по оси Х и -0.3…0.3 по оси У становится очевидным, что система устойчива, так как кривая обходит критическую точку (рисунок 111, б). Другим способом детального исследования части характеристики является отказ от автоматического задания диапазона частот и самостоятельный его выбор, в этом случае кривая бывает обычно более сглаженной по сравнению с первым способом. Nyquist Diagram Nyquist Diagram 0.2 Imaginary Axis Imaginary Axis 0 -50 -100 -60 -40 -20 0 20 Real Axis 40 0.1 0 -0.1 -0.2 -10 60 -8 -6 -4 -2 0 Real Axis а б Рисунок 111 Это пример системы с двумя видами запаса устойчивости по амплитуде – на увеличение и уменьшение коэффициента усиления. Он показывает, что отрицательное значение запаса устойчивости по амплитуде еще не является признаком неустойчивости системы – это может быть просто запас на уменьшение коэффициента усиления. Особенный случай показан на рисунке 112 для системы с передаточной функцией w=tf(1,[1 3 2 6 4 5 2]). Запасы устойчивости программа находит и система кажется устойчивой (даже при использовании правила штриховки), хотя заведомо известно, что в замкнутом состоянии эта система будет неустойчивой – об этом говорит и вывод Closed Loop Stable? No. Очевидно, что этот вывод программа делает не с помощью критерия Найквиста, а иным способом, вероятнее всего самостоятельно замкнув систему и вычислив ее полюса. 218 а б Рисунок 112 >> w=tf(1,[1 3 2 6 4 5 2]); >> [num,den]=tfdata(w,'v'); >> roots(num+den) ans = -2.9137 0.5109 + 1.1043i 0.5109 - 1.1043i -0.2378 + 1.0212i -0.2378 - 1.0212i -0.6325 % разомкнутая система % полюса замкнутой системы По корням видно, что замкнутая система неустойчива (есть комплексная сопряженная пара полюсов с положительной вещественной частью 0.5109 ± j1.1043), однако из АФЧХ разомкнутой системы это отнюдь не следует (рисунок 112, а), годограф не охватывает точку с координатами (-1, j0). Кривая Михайлова (рисунок 112, б) в этом отношении предпочтительнее – она правильно указывает на неустойчивость системы, т.к. при порядке системы n=6 годограф проходит лишь два квадранта комплексной плоскости, уходя далее в бесконечность. Оценим устойчивость замкнутой системы и по диаграмме Боде. Фазовый угол не будет выходить из пределов +180° и -180° (рисунок 113), если сбросить флажок в опции Unwrap phase окна Characteristics. >> bode(b,a) При выборе в контекстном меню диаграммы Боде опций Characteristics-Minimum Stability Margins в точках, отмеченных маркерами, указываются запасы устойчивости системы после замыкания: 41.3 дБ по амплитуде и бесконечные по фазе и запаздыванию. Для этой цели могут также использоваться функция margin(), отображающая минимальные запасы устойчивости (в одну сторону), и allmargin(), осуществляющая вывод всех значений запасов устойчивости в формате: 219 Bode Diagram 0 Magnitude (dB) -50 System: sys Gain Margin (dB): 41.3 At frequency (rad/sec): 1.65 Closed Loop Stable? Yes -100 -150 -200 -250 180 Phase (deg) 90 0 -90 -180 -2 10 -1 10 0 1 10 10 2 10 3 10 Frequency (rad/sec) Рисунок 113 >> w=tf(1,[1 2 S = GainMargin: GMFrequency: PhaseMargin: PMFrequency: DelayMargin: DMFrequency: Stable: 3 4]); S=allmargin(w) 2.0001 % запасы устойчивости по амплитуде (1/K-180°) 1.7321 % частоты пересечения линии -180° (рад/с) [1x0 double] % запасы по фазе (не вычислялись) [1x0 double] % частоты среза (нет) [1x0 double] % запасы по задержке (не вычислялись) [1x0 double] % частоты среза (нет) 1 % система после замыкания устойчива (иначе 0) При обращении [Gm, Pm, GmF, PmF] = margin() данная функция возвращает наименьшие из возможных значения запасов устойчивости по амплитуде и фазе (в градусах) и соответствующие им частоты, а при отсутствии левой части margin() строит диаграмму Боде с вычисленными значениями запасов. В первом и втором случаях Gm измеряется в разных единицах: в первом это относительная величина K=1/G=1/0.5=2.0001 при пересечении ЛАХ с линией -180°, во втором она будет равна 20lg(K)=6.02 в дБ. Отметим попутно, что для системы W(s)=1/(s4+2s3+3s2+4s+5) функция дает бесконечные значения запасов устойчивости Gm = Inf и Pm = Inf, что не соответствует действительности, хотя при этом и выводится предупреждение о неустойчивости системы в замкнутом состоянии The closed-loop system is unstable, полученное не из диаграммы Боде, а необъявленным способом. >> ww=tf(1,[1 2 3 4 5]); [Gm,Pm]=margin(ww) 220 Warning: The closed-loop system is unstable. Gm = Inf Pm = Inf Поскольку сама программа MATLAB не пользуется для оценки критерием Найквиста или диаграммой Боде, а проверяет устойчивость иным способом, напрашивается вывод, что для SS, TF и ZPK моделей критерий Найквиста имеет ограниченное применение лишь для расчета запасов устойчивости, и необходимо внимательно следить за общим заключением об устойчивости системы, чтобы не придти к ошибочным результатам. В то же время для FRD-модели это единственный способ оценить устойчивость системы после замыкания. Диаграмма Николса является полной аналогией годографа Найквиста и предназначена для тех же целей. Она имеет два существенных отличия: - если годограф Найквиста строится в координатах действительная часть-мнимая часть на комплексной плоскости, то годограф Николса строится в дополняющих их координатах фаза (градусы)-амплитуда (децибелы); - положение характеристики оценивается относительно точки с координатами (0 дБ, -180°). Для работы с экспериментальными данными диаграмма Николса удобнее годографа Найквиста, так как обычно в опытах производится замер отношения амплитуд и разности фаз гармонических сигналов на входе и выходе объекта. Построим оба графика для одной и той же разомкнутой системы (рисунок 114). Оценки запасов устойчивости полностью совпадают. Все проблемы оценки устойчивости систем в особых случаях, выявленные при рассмотрении критерия Найквиста, относятся и к диаграмме Николса, но дополнительные условия, вроде правила штриховки, здесь не применяются. Замкнутая система устойчива, если годограф Николса разомкнутой системы проходит ниже точки с координатами (0 дБ, -180°). Запас устойчивости по амплитуде (Gain Margin) равен расстоянию от указанной точки до кривой по вертикали вниз, запас устойчивости по фазе (Phase Margin) – расстоянию от указанной точки до кривой по горизонтали вправо. В этой же точке рассчитывается запас по чистой задержке (Delay Margin). 221 Рисунок 114 Для сравнения приведена диаграмма Николса (рисунок 115) неустойчивой в замкнутом состоянии системы – кривая охватывает особую точку и запас устойчивости по амплитуде отрицателен, т.е. отсутствует. Табличка с индикацией параметров в позиции маркера может быть размещена относительно кривой посредством опции контекстного меню Alignment-Top-Right (вверху справа), Top-Left (вверху слева), Bottom-Right (внизу справа), Bottom-Left (внизу слева) или удалена. Рисунок 115 222 С помощью MATLAB можно осуществить декомпозицию системы на две параллельно соединенные устойчивую и неустойчивую части W(s) = W1(s) + W2(s) посредством функции stabsep(sys). В первую подсистему объединяются моды с отрицательной действительной частью, во вторую – моды с нулевой и положительной действительной частью, обусловливающие нестабильность системы. >> w=tf(1,[1 1 6 6 25 25]); [w1,w2]=stabsep(w) Transfer function: 0.01875 s^2 + 0.0875 s + 0.1938 ------------------------------s^3 + 3 s^2 + 7 s + 5 Transfer function: -0.01875 s + 0.00625 -------------------s^2 - 2 s + 5 >> eig([w w1 w2]) %распределение полюсов по подсистемам W, W1, W2 ans = 1.0000 + 2.0000i -1.0000 + 2.0000i 1.0000 + 2.0000i 1.0000 - 2.0000i -1.0000 - 2.0000i 1.0000 - 2.0000i -1.0000 + 2.0000i -1.0000 -1.0000 - 2.0000i -1.0000 >> ww=w1+w2 % обратная композиция системы для проверки точности Transfer function: 3.469e-018 s^4 + 1.388e-017 s^3 - 2.498e-016 s^2 + 2.776e-016 s + 1 ------------------------------------------------------------------s^5 + s^4 + 6 s^3 + 6 s^2 + 25 s + 25 избавляясь от членов полинома числителя со значением менее 1e-15 >> [num,den]=tfdata(ww,’v’); nn=num.*(abs(num)>1.e-15); >> ww=tf(nn,den) Transfer function: 1 ------------------------------------s^5 + s^4 + 6 s^3 + 6 s^2 + 25 s + 25 6.13 Оценка качества процесса регулирования Построив переходную характеристику для заданных входа-выхода (рисунок 116) с помощью функции step() или графического анализатора ltiview(имя_системы), на вкладке Characteristics (Характеристики) контекстного меню можно задать показ максимума (Peak Response), времени регулирования (Settling Time), времени нарастания (Rise Time) и установившегося значения (Steady State, DC Gain или Final Value). Рекомендуется установить в окне редактирования свойств (Properties) на вкладке Characteristics емени регулирования равной 5 % (по умолчанию она равна 2%), интервал оценки времени нарастания можно оставить прежним – от 10 до 223 90 %. Значения показателей качества определяются по табличке, формируемой при установке указателя мыши на маркеры графика. Рисунок 116 Из графика время нарастания по диапазону (0,1-0,9) установившегося значения равно 3.05 с, время регулирования при ошибке 5 % равно 10.3 с, значение максимума 0.0986 при времени достижения максимума 7.13 с, перерегулирование (Overshoot) 18.4 %, установившееся значение 0.0833. Типовой график переходного процесса в MATLAB (рисунок 117) поясняет принципы оценки ею прямых показателей регулирования. Рисунок 117 Из рисунка видно, что программа различает заброс от установившегося значения вверх (Overshoot) и провал от начального (Init) значения вниз (Undershoot). Последнее понятие отсутствует в учебной литературе СНГ и не вычисляется специально с выводом результата самой MATLAB. Кроме того, хотя в справке MATLAB говорится, что зона Δ %, 224 однако на самом деле по умолчанию выставлено 2 % и интервал оценки времени нарастания составляет от 10 до 90 %. Утверждение справки, что обе эти величины вычисляются от установившегося значения (Final Value), не всегда подтверждается в экспериментах. MATLAB считает максимумом (Peak Response) наибольшее отклонение от установившегося значения (не сказано, что первое, и не обязательно с переходом через линию установившегося значения). Заметим, что при исследовании систем регулирования возможны три типа передаточных функций: с m = 0 (нули отсутствуют) – такова главная передаточная функция от входа задания r(t) к регулируемому выходу y(t); с m = n (порядок полинома числителя m равен порядку полинома знаменателя n) – это соответствует функции передачи ошибки регулирования от задания; с 0 < m < n (это функции влияния возмущения на регулируемую величину и ошибку регулирования). Анализ результатов моделирования в MATLAB показал, что для систем с m = n возможно неверное определение показателей качества, в частности, значения перерегулирования и времени достижения максимума. Так, для системы с передаточной функцией ошибки статической системы W(s) = (s^2+2s+1)/(s^2+2s+3) перерегулирование (Overshoot) на графике переходной функции охарактеризовано значением 200 % (рисунок 118), тогда как при оценке корневым методом по полюсам передаточной функции для той же самой системы программа MATLAB дает значение перерегулирования только 10,8 %. Рисунок 118 При самостоятельном расчете по кривой на основе стандартного подхода перерегулирование равно σ = (0.333-0.261)/(1.000-0.333) = 0.072/0.667 = 0.108, т.е. те же 10,8 %. Это же значение 10,8 % выводит программа по переходной характеристике при полном удалении из системы нулей (m = 0), например, для главной передаточной функции 225 W(s) = 3/(s^2+2s+3). Как же следует оценить нашу систему по величине перерегулирования – она плохая (200 %) или хорошая (10,8 %)? Между тем, величину Δ для оценки времени регулирования рассматриваемого переходного процесса программа берет, в соответствии с рекомендуемым подходом, как 5 % от разницы начального и установившегося значений 0.05*(1.000-0.333) = 0.05*0.667=0.033. Этот же подход применен для расчета времени нарастания. И можно предположить, что программа пренебрегает корневыми оценками и стандартными методами расчета перерегулирования по той причине, что при броске регулируемой величины для нее важнее определять не собственные свойства системы, а пагубность этого броска для потребителей. Правда, случай с m = n характерен не для выхода регулирования, а для выхода ошибки, где потребителей не бывает, но вот различить, на каком выходе анализируется качество процесса, программа не может, это уже удел того, кто сидит перед компьютером. Пример говорит о том, что, программа не различает относительную величину – перерегулирование, и абсолютную величину – максимальное динамическое отклонение. Таким образом, каким бы мощным ни был программный продукт, к результатам моделирования следует всегда подходить осторожно, проверяя их по возможности иными способами и представляя примерно ожидаемый результат. Понятно, что в соответствии с теоремой о начальном значении переходной функции пик характеристики в момент t = 0 определялся не характеристическим полиномом системы, т.е. ее собственными свойствами, а отношением коэффициентов при старших степенях s в числителе и знаменателе передаточной функции. А оно не связано непосредственно с собственными свойствами системы и, естественно, не может вытекать из расположения нулей и полюсов на комплексной плоскости. Таким образом, временные и корневые модели в MATLAB могут при оценке качества регулирования давать противоречащие друг другу результаты. ПФ W(s)=(s^3+2s^2+3s)/(s^4+2s^3+3s^2+4s+1.2) характеризуется тем, что переходная характеристика начинается и заканчивается в нуле (рисунок 119). Значение перерегулирования равно бесконечности (Inf)! Карта корней дает, естественно, иное значение 83,5 %. Если же последовать обычным рекомендациям, то перерегулирование следует в этом случае считать как отношение максимума к единичному скачку, т.е. 105 %, либо как отношение второго максимума к первому, или 0,237/1,05 = 0,226 (22,6 %). Система вообще получается вполне приличной. 226 Рисунок 119 Согласно общепринятому подходу, перерегулирование должно определяться по первому максимуму, и время tmax – это время достижения первого максимума. Однако MATLAB берет на кривой (рисунок 120) не первый, а третий максимум, т.е. не локальный максимум и не первый по порядку, а просто наибольший (абсолютный). К корневым методам этот принцип уж точно не имеет отношения, но зато сообразуется с желанием защитить потребителя, о котором мы уже упоминали, так как выбирается самое большое отклонение из всех. Рисунок 120 Вопреки стандартному определению перерегулирования программа может выбрать в качестве максимума и экстремум обратной полуволны (рисунок 121). Установившееся значение здесь отрица- 227 тельно, график начинается с нуля, поэтому и перерегулированием должен был быть переброс через линию установившегося значения вниз. Рисунок 121 Итак, MATLAB выбирает не первый, а абсолютный максимум независимо от его знака и порядкового номера (наибольшее отклонение от нуля в ту или иную сторону), и вычисляет перерегулирование, не всегда учитывая знак установившегося значения. При этом может получиться и минус перерегулирование (-691% на рисунке 121), хотя в учебной литературе СНГ подобное не предусмотрено. Наконец, совсем уж характерный пример представляют собой переходные характеристики систем с передаточными функциями W(s)=(-2s+0.93)/(s^2+2s+2) и W(s)=(-2s+0.935)/(s^2+2s+2), показанные на рисунке 122, а и б. а б Рисунок 122 228 Первая система имеет полюса -1±1j и ноль 0.465. Время регулирования составляет 2.67 с; время нарастания 0.952 с; провал -0.509, максимум 0.507, перерегулирование -210 %. Вторая система имеет полюса -1±1j и ноль 0.468, время регулирования 2.67 с; время нарастания 0.953 с; провал -0.509, максимум 0.51, перерегулирование 9.02 %. Разница в параметрах звеньев и характеристик находится в пределах погрешности измерений (ноль в первом случае равен 0.465, во втором 0.468; максимум в первом случае 0.507, во втором 0.51). Практически системы и их характеристики неразличимы. Однако вычисленные для них программой MATLAB значения перерегулирования различаются на порядок, да еще и отличаются знаком! Таким образом, результаты, полученные при моделировании в MATLAB, зачастую противоречат как друг другу, так и определениям, традиционным для учебной литературы СНГ. Их следует использовать достаточно осторожно, особенно для случаев, когда переходная характеристика начинается не с нуля (т. е. при m = n); заканчивается в нуле (астатические звенья, bm = 0); начинается и заканчивается на одном и том же уровне; имеет разнополярные значения. Используя программу MATLAB, можно изучить также принципы моделирования системы нулями-полюсами на комплексной плоскости, метод корневого годографа, корневые методы коррекции параметров и синтеза одномерных (SISO) систем с заданными свойствами. Если, вызвав окно графического анализатора, выбрать в контекстном меню графиков тип графика Plot Types-Pole/Zero, для одномерной системы будет выведена карта размещения нулей Zero (кружки) и полюсов Pole (крестики) системы на комплексной плоскости. Аналогичные действия выполняет функция pzmap(имя_системы). Отдельно вычисляет полюса системы функция pole(), нули – функция zero(). Функция rlocus(имя_системы) производит расчет и вывод в графическое окно корневого годографа (Root Locus). Требования к анализируемой системе в этом случае аналогичны требованиям критерия Найквиста, т. е. исходная система должна быть разомкнутой. Пусть задана передаточная функция Wyr(s) замкнутой системы. Разомкнутой системе (Open Loop), ПФ которой мы получим сами >> [b,a]=tfdata(wyr,'v'); wol=tf(b,a-b); соответствуют значения полюсов (нули отсутствуют) >> pole(wol) ans = -5.2500 + 5.2381i -5.2500 - 5.2381i -0.2500 + 0.4330i -0.2500 - 0.4330i 229 Корневой годограф системы (рисунок 123) вызывается командой rlocus(wol) Рисунок 123 Для каждой точки годографа можно получить с помощью мыши: текущее значение коэффициента передачи Gain, значение корня Pole, значения коэффициента демпфирования Damping и частоты собственных колебаний Frequency (рад/с), значение перерегулирования Overshoot (%). У неустойчивой системы действительная часть хотя бы одного полюса положительна, а значение коэффициента демпфирования этого корня отрицательно. Из просмотре годографа с помощью маркеров устанавливаем, что изменение коэффициента усиления системы до kс = 107 приводит к ее неустойчивости, корни характеристического полинома выходят на мнимую ось. Время регулирования системы при kс = 0 по доминирующим корням равно 3/0,25 = 12 с, перерегулирование 16,3 %. Функция rltool(plant) – частная, или sisotool(plant) открывает окно SISO Design Tool (рисунок 124) проектирования системы регулирования одномерного объекта Plant, описанного предварительно. Оно позволяет спроектировать методом корневого годографа для одномерной системы вводимый дополнительно в схему регулятор (Compensator), наблюдая результирующее изменение переходной характеристики, годографа Найквиста или диаграммы Боде (в этих случаях программа размыкает систему сама). Регулятор C может располагаться в цепи как прямой (Forward), так и обратной (FeedBack), как отрицательной, так и положительной (кнопка +/-) связи. Место уста- 230 новки регулятора выбирается с помощью кнопки FS, результирующая передаточная функция регулятора C(s) выводится в окне. Рисунок 124 В процессе моделирования могут быть исключены, компенсированы или добавлены действительные и комплексные полюса или нули, заданы характеристики звена Prefilter (фильтра F) на входе задания и измерительного преобразователя Sensor (датчика H) в цепи обратной связи. Исходный объект (Plant) сохраняется неизменным в виде блока G. В меню Tools может быть выбран вид исследуемой характеристики (с помощью опции Loop Responses), либо построена специально для целей исследования структурная схема в среде Simulink. Создадим объект регулирования, имеющий передаточную функцию W(s) = 0.25/(s2+0.5s+0.25). При оценке его в окне проектирования методом корневого годографа Siso Design Tool диаграмма Боде дает запас устойчивости по амплитуде Gm=Inf (бесконечный), по фазе Pm=90 град (рисунок 124). По переходной характеристике перерегулирование равно 30.4 %, время регулирования для зоны 5% составляет 15.5 с. При коэффициенте передачи П-регулятора kр = 1 точность в установившемся режиме характеризуется установившейся ошибкой, которая равна 1-0.5=0.5 или 50.0 %, система статическая. Пойдем простым путем и выполним коррекцию системы, уменьшив статизм системы до 5 % за счет увеличения коэффициента усиления П-регулятора, для чего будем перемещать маркер положения полюса на комплексной плоскости Root Locus Editor (рисунок 125). 231 Рисунок 125 После корректировки точность в установившемся режиме повысилась и соответствует ошибке регулирования 1-0.952=0.048 или 4.8 % при коэффициенте передачи П-регулятора Кр=20. Новое значение запаса устойчивости по амплитуде равно бесконечности, по фазе 13.1 град, перерегулирование 70.8 %, время регулирования 15.4 с (рисунок 126). Полюса замкнутой системы при Кр=20 равны -0.25±j2.28. Рисунок 126 Как следует из переходной характеристики, увеличение коэффициента передачи П-регулятора уменьшило установившуюся ошибку, однако ухудшило устойчивость системы и увеличило колебательность процесса регулирования. Полученные характеристики трудно назвать оптимальными, поэтому изменим структуру регулятора, введя в закон регулирования интегральную составляющую – устраним уста- 232 новившуюся ошибку другим путем, переводя систему из статических в астатические. Построим для того же объекта регулирования Ирегулятор с передаточной функцией W(s) = 1/s и именем comp. >> plant=tf(0.25,[1 0.5 0.25]); comp=tf(1,[1 0]); >> sisotool(plant,comp) Зацепив левой кнопкой мыши маркер на траектории комплексного корня, перетаскиваем его в левую (устойчивую) полуплоскость до тех пор, пока не получим достаточные значения запаса устойчивости по амплитуде (не менее 6 дБ) на диаграмме Боде (рисунок 127). Рисунок 127 При значении коэффициента передачи Kp = 0.2 запасы устойчивости замкнутой системы оказались равны 7.96 дБ и 61.8°, что вполне удовлетворяет стандартным требованиям. Динамические характеристики замкнутой системы регулирования получим, выбрав в меню Analysis пункт Response to Step Command (рисунок 128, а) и Rejection of Step Disturbance (рисунок 128, б). Первый график позволяет проверить, что перерегулирование выходной величины y(t) по заданию r(t) 233 не превышает 30 % (на графике оно равно 12.1 %, при необходимости можно подобрать значение перерегулирования, изменяя положение полюса на комплексной плоскости). Вторая кривая этого рисунка отображает изменение во времени управления u(t) на выходе регулятора. а б Рисунок 128 Второй график показывает реакцию проектируемой системы при возмущении (Disturbance) на входе объекта регулирования (du to y) и на его выходе (dy to y). В худшем случае за время 24.1 с регулятор возвращает систему в установившееся состояние. Таким образом, использование ПИ-регулятора позволило уменьшить значение перерегулирования и полностью устранить статическую ошибку, поскольку при единичном скачке на входе задания выходная величина также приходит к единичному значению, а возмущения в виде ступенчатой функции на входе и выходе объекта сходят к нулю. Выбрав опцию меню View-Closed-Loop Poles, определяем, что в итоге проектирования корни характеристического уравнения замкнутой системы равны -0.266 и -0.117±0.417i. Необходимо отметить, что те же результаты получаются, если регулятор С установлен в цепи обратной связи последовательно с датчиком H (изменение положение регулятора выполняется кнопкой FS). Можно провести дальнейшее улучшение показателей качества, в частности, времени регулирования, вызвав одновременно на экран окна SISO Design for Sysem … и LTI Viewer for SISO Design Tool, перемещая мышью полюс на комплексной плоскости и наблюдая за происходящими изменениями запасов устойчивости и показателей качества. Если окно проектирования регулятора для SISO-объекта уже открыто, изменить параметры регулятора позволяет опция Compensators-Edit-C. В открывшемся диалоговом окне можно установить коэффициент усиления регулятора Gain, добавить действительный и нулевой (Add Real Pole) или комплексный (Add Complex Pole) корни, уда- 234 лить уже имеющийся полюс регулятора. Можно сформировать ПИрегулятор, добавив к передаточной функции действительный нуль. 6.14 Создание модели в пространстве состояний Возможно бесчисленное множество описаний одной и той же системы в пространстве состояний, однако удобнее использовать несколько стандартных моделей. Рассмотрим порядок создания SSмодели штатными функциями MATLAB на примере системы с передаточной функцией W(s)=(s^2 + 3 s + 2)/(s^3 + 5 s^2 + 11 s + 15), имеющей нули -1, -2, полюса -3, -1±j2 и коэффициент усиления 1. Функция ss() используется для построения SS-модели по матрицам A, B, C, D или модели системы, описанной в иной форме (кроме FRD-модели) >> sys=ss(w) a = x1 x1 -5 x2 4 x3 0 b = u1 x1 2 x2 0 x3 0 c = x1 y1 0.5 d = u1 y1 0 x2 -2.75 0 1 x3 -3.75 0 0 x2 0.375 x3 0.25 Эта модель не является стандартизированной, тогда как обычно модели приводят к одной из канонических форм (представлений), т.е. упорядоченных заданным образом форм описания системы методом переменных состояния, предназначенных для выполнения определенного круга операций. Например, функция tf2ss() осуществляет преобразование TF-модели в каноническую инверсную управляемую форму SS-модели, с коэффициентами характеристического полинома в верхней строке матрицы А (сопровождающей). У управляемой формы обычно нормированный вид с единственной единицей имеет матрица коэффициентов входов В. >> [a,b,c,d]=tf2ss(num,den) a = -5 -11 -15 1 0 0 0 1 0 235 b = 1 0 0 c = 1 3 2 d = 0 Здесь и далее во всех именах, например, tf2ss, цифра 2 заменяет предлог to, подразумевающий направление преобразования – в конкретном примере из записи передаточной функцией в (to) описание переменными состояния. Преобразование ZPK-модели в управляемую SS-модель с произвольно образованной матрицей А функцией zp2ss() >> [a,b,c,d]=zp2ss(z,p,k) a = -3.0000 0 0 1.0000 -2.0000 -2.2361 0 2.2361 0 b = 1 0 0 c = 1.0000 1.0000 -1.3416 d = 0 Каноническая модальная форма характеризуется тем, что в матрице А собственные значения расположены по диагонали, причем используются лишь вещественные числа, поэтому каждая пара комплексных корней выводится в виде блока, у которого действительные части находятся на главной диагонали, а мнимые – справа (положительная) и слева (отрицательная) от нее. >> sys=canon(w,'modal') a = x1 x2 x3 x1 -3 0 0 x2 0 -1 2 x3 0 -2 -1 b = u1 x1 3.881 x2 3.69 x3 1.23 c = x1 x2 y1 0.06442 0.1626 d = x3 0.122 236 y1 u1 0 Каноническая управляемая форма с сопровождающей (companion) матрицей А, содержащей характеристический многочлен в правом столбце (авторы MATLAB советуют избегать этой формы ввиду численной неустойчивости) может быть получена обращением >> sys=canon(w,'companion') a = x1 x2 x3 x1 0 0 -15 x2 1 0 -11 x3 0 1 -5 b = u1 x1 1 x2 0 x3 0 c = x1 x2 x3 y1 1 -2 1 d = u1 y1 0 Все формы модели в пространстве состояния, создаваемые MATLAB, не совпадают с общепринятыми каноническими управляемым и наблюдаемым представлениями. Этот пробел призваны компенсировать специально разработанные и приводимые далее функции пользователя tf2cs() и tf2os(). Первая по числителю и знаменателю передаточной функции выводит каноническую управляемую форму, причем предлагаются два варианта этой функции: с вычислением матриц делением полинома числителя ПФ на полином знаменателя function [a,b,c,d]=tf2cs(num,den) a=flipud(fliplr(compan(den))); b=flipud(eye(length(den)-1,1)); [d,c]=deconv(num/den(1),den/den(1)); c=fliplr(c); c=[c zeros(1,length(b))]; c=c(1:length(b)); и с вычислением элементов матрицы с по правилу ci = bn+1-I – an+1-i∙d function [a,b,c,d]=tf2cs(num,den) a=flipud(fliplr(compan(den))); b=fliplr(eye(1,length(den)-1))'; num=[zeros(1,length(den)-length(num)) num/den(1)]; d=num(1); c=num-den/den(1)*d; c=fliplr(c(2:end)); Результат работы обоих вариантов функции совпадает до нулевого порядка числителя и знаменателя передаточной функции >> num=[1 3 2]; den=[1 5 11 15]; >> [a, b, c, d]=tf2cs(num,den) 237 a = 0 0 -15 b = 0 0 1 c = 2 d = 0 1 0 -11 0 1 -5 3 1 Вторая функция tf2os() function [a,b,c,d]=tf2оs(num,den) a=flipud(fliplr(compan(den))); ld=length(den); c=eye(1,ld-1); num=[zeros(1,ld-length(num)) num/den(1)]; den=den/den(1); b(1)=num(1); n=1; while n<ld n=n+1; b(n)=num(n)-sum(b.*fliplr(den(2:n))); end d=b(1); b=b(2:ld)'; по числителю и знаменателю передаточной функции возвращает традиционное описание системы в канонической наблюдаемой форме >> [a, b, c, d]=tf2оs(num,den) a = 0 1 0 0 0 1 -15 -11 -5 b = 1 -2 1 c = 1 0 0 d = 0 MATLAB позволяет упростить модель системы регулирования (снизить ее порядок). К этому направлению относятся функции: modred(sys,elim) – снижает порядок модели, описанной в пространстве состояний, исключая состояния, обозначенные вектором индексов elim. Последний можно сформировать с применением функции balreal(), выявляющей переменные с пренебрежимым вкладом в реакцию системы. >> [sys,g] = balreal(sys) >> elim = (g<1e-8) % вычисление сбалансированной реализации % индикация пренебрежимых состояний 238 >> rsys = modred(sys,elim) % удаление пренебрежимых состояний minreal() – строит минимальную реализацию системы путем исключения неуправляемых и ненаблюдаемых переменных состояния (пар нуль-полюс с одинаковыми значениями); sminreal – удаляет состояния, не имеющиеся связи ни с одним входом или выходом. 6.15 Особенности исследования многомерных систем Рассмотрим особенности моделирования многомерных (MIMO) систем, синтеза модального регулятора и наблюдателя состояния. Сопровождающую матрицу (матрицу А в канонической форме описания системы) можно получить по характеристическому полиному Р функцией compan(P). Характеристическая матрица вычисляется в символической записи, характеристический полином является ее определителем. >> a=[0 1 0;0 0 1;-4 -3 -2]; % задаем матрицу А третьего порядка >> syms s % определяем символьную переменную s >> sa=s*eye(3)-a % вычисляем характеристическую матрицу sa = [ s, -1, 0] [ 0, s, -1] [ 4, 3, s+2] >> det(sa) % определитель характеристической матрицы ans = s^3+2*s^2+3*s+4 Системную матрицу или резольвенту Ф(s) можно получить отдельно, либо как обратную матрицу к известной характеристической >> a=[0 1 0; 0 0 1; -4 -3 -2]; % задаем матрицу А третьего порядка >> syms s % определяем символьную переменную s >> w=s*eye(3)-a; % вычисляем характеристическую матрицу >> inv(w) % вычисляем резольвенту ans = [(s^2+2*s+3)/(s^3+2*s^2+3*s+4), (s+2)/(s^3+2*s^2+3*s+4), 1/(s^3+2*s^2+3*s+4)] [-4/(s^3+2*s^2+3*s+4), s*(s+2)/(s^3+2*s^2+3*s+4), s/(s^3+2*s^2+3*s+4)] [-4*s/(s^3+2*s^2+3*s+4), -(3*s+4)/(s^3+2*s^2+3*s+4), s^2/(s^3+2*s^2+3*s+4)] Для некоторых частных передаточных функций при определенных сочетаниях полюсов можно сразу получить оригинал с помощью обратного преобразования Лапласа и построить график (рисунок 129) >> syms s t w y % объявляем символьные переменные >> w=1/(s^3+2*s^2+2*s+1); % описываем изображение W(s) >> y=ilaplace(w, t) % обратное преобразование Лапласа от w по t y= exp(-t)-exp(-1/2*t)*cos(1/2*3^(1/2)*t)+1/3*3^(1/2)*exp(-1/2*t)*sin(1/2*3^(1/2)*t) >> ezplot(y,0,20) % строим график y(t) в диапазоне 0-20 с 239 exp(-t)-...+1/3 31/2 exp(-1/2 t) sin(1/2 31/2 t) 0.4 0.3 0.2 0.1 0 0 5 10 t 15 20 Рисунок 129 Кроме того, фундаментальную матрицу можно получить как матричную экспоненту от At, например >> syms t; A=[0 1;-2 -3] A = 0 1 -2 -3 >> expm(A*t) ans = [ -exp(-2*t)+2*exp(-t), [ -2*exp(-t)+2*exp(-2*t), exp(-t)-exp(-2*t)] 2*exp(-2*t)-exp(-t)] Матрицы управляемости (controllability) Q и наблюдаемости (observability) N формируются в MATLAB командами ctrb() и obsv(), причем последняя иначе, чем принято в СНГ, без транспонирования матриц А и с (в соответствии со свойством матриц АТсТ = (сА)Т). Q [B AB C CA A 2B ... A n 1B] , N CA 2 . ... CA n 1 Затем с помощью функции rank() вычисляется ранг матриц. Ранг матрицы управляемости объекта регулирования w033 равен порядку объекта n = 2, следовательно, он полностью управляем. >> ctrb(w033) ans = 1.0000 -0.5000 0 1.0000 >> rank(ans) ans = 2 240 Ранг матрицы наблюдаемости объекта регулирования w033 равен порядку объекта n = 2, следовательно, он полностью наблюдаем. >> obsv(w033) ans = 0 0.2500 0.2500 0 >> rank(ans) ans = 2 6.16 Проектирование регулятора в пространстве состояний Модальный регулятор представляет собой П-регулятор с коэффициентом К и обратными связями по переменным состояния x1 ... xn, значения которых определяются лишь заданными модами замкнутой системы. Выбор коэффициентов ki матрицы обратных связей k обеспечивает получение заданных динамических свойств системы, причем единственным образом. Управление в MATLAB описывается матричным уравнением u = -kx, где k – матрица коэффициентов обратной связи регулятора по переменным состояния, замыкающей систему. Общий коэффициент усиления регулятора К вынесен в задатчик (Prefilter). Одномерное уравнение регулятора соответствует использованию в цепи обратной связи замкнутой системы ПД-регулятора. Замкнутая система регулирования, объединяющая объект регулирования и регулятор (рисунок 130), получается в этом случае из разомкнутой системы по формулам D = d; C = c – Dk; B = b; A = a – Bk, где a, b, c, d – матрицы коэффициентов разомкнутой системы, A, B, C, D – замкнутой. Рисунок 130 Исходя из требований к процессу регулирования замкнутой системы, выбирают корни s1, s2 ... sn и определяют эталонный (желаемый) характеристический полином с коэффициентами a1 ... an. Если система приведена к канонической форме управляемости, коэффициенты матрицы обратных связей вычисляют из условия ki = ai - ai0, где ai0 – коэффициенты характеристического полинома разомкнутой системы, 241 для получения единственного решения обычно находят коэффициент передачи К П-регулятора из условия нулевой ошибки на выходе системы в установившемся состоянии K∙bm/an=1. Пусть передаточная функция объекта регулирования равна W(s)=(s+10)/(s3+2s2+3s+4). Используя функцию tf2ss(num, den), получим описание системы переменными состояния в инверсной канонической управляемой форме >> num=[1 10]; >> den=[1 2 3 4]; >> [a,b,c,d]=tf2ss(num,den); >> sys=ss(a,b,c,d) a = x1 x2 x3 x1 -2 -3 -4 x2 1 0 0 x3 0 1 0 b = u1 x1 1 x2 0 x3 0 c = x1 x2 x3 y1 0 1 10 d = u1 y1 0 Используем желаемое расположение полюсов замкнутой системы с регулятором, описываемое вектором v, для вычисления матрицы коэффициентов обратной связи по переменным состояния k с помощью функции place(). >> v=[-1; (-1+i); (-1-i)]; k=place(a, b, v) k = 1.0000 1.0000 -2.0000 Имеется также функция аналогичного назначения acker(a,b,v), реализующая метод Аккермана, однако она не рекомендуется авторами MATLAB к применению в связи с недостаточной численной надежностью при порядке исследуемых систем свыше 10. Матрицу прямой связи (коэффициент регулятора К) вычисляем из условия получения единичного коэффициента усиления системы в установившемся состоянии >> K=1/(d-(c-d*k)/(a-b*k)*b) K = 0.2000 Определяем все матрицы описания замкнутой системы 242 >> ap=a-b*k; bp=b*K; cp=c-d*K; dp=d*K; и формируем ее математическую модель в пространстве состояний >> sysp=ss(ap, a = x1 x2 x1 -3 -4 x2 1 0 x3 0 1 b = u1 x1 0.2 x2 0 x3 0 c = x1 x2 y1 0 1 d = u1 y1 0 bp, cp, dp) x3 -2 0 0 x3 10 Результаты можно проверить, вычислив собственные значения замкнутой системы (корни характеристического уравнения) и ее передаточную функцию. >> eig(sysp) ans = -1.0000 + 1.0000i -1.0000 - 1.0000i -1.0000 >> tf(sysp) Transfer function: 0.2 s + 2 --------------------s^3 + 3 s^2 + 4 s + 2 Рассмотрим вычисление матрицы k коэффициентов обратной связи по переменным состояния модального регулятора для произвольно заданного объекта (рисунок 131) при включенном в замкнутый контур обратной связи блоке с коэффициентом регулятора К, в том числе для случая измерения только выходной переменной. >> a=[-1 1 0;0 0 1;0 -3 0]; % самостоятельно описываем объект >> b=[0 0 1]'; c=[1 1 0]; d=0; 1 u 1 s x3 Integrator 1 s 1 x2 Integrator1 s+1 Transfer Fcn 3 Gain Рисунок 131 243 x1 1 y >> sys=ss(a,b,c,d) % строим его модель в пространстве состояний a = x1 x2 x3 x1 -1 1 0 x2 0 0 1 x3 0 -3 0 b = u1 x1 0 x2 0 x3 1 c = x1 x2 x3 y1 1 1 0 d = u1 y1 0 >> w=tf(sys) % вычисляем передаточную функцию объекта Transfer function: s + 2 ------------------s^3 + s^2 + 3 s + 3 >> [num,den]=tfdata(w,'v'); >> DD=poly(a) % характеристический полином разомкнутой системы DD = 1.0000 1.0000 3.0000 3.0000 >> [ac,bc,cc,dc]=tf2ss(num,den) % матрицы канонической формы ac = -1.0000 -3.0000 -3.0000 1.0000 0 0 0 1.0000 0 bc = 1 0 0 cc = 0 1 2 dc = 0 >> sysc=ss(ac,bc,cc,dc); % модель объекта в канонической форме >> v=[-10,-1+i,-1-i]; % вектор с желаемым расположением полюсов >> D=poly(v) D = 1 12 22 20 % новый характеристический полином >> K=D(end)/cc(end) % находим коэффициент усиления регулятора К K = 10 >> k=(D-DD)/K 244 k = 0 1.1000 1.9000 1.7000 >> k=k(2:end) % матрица k коэффициентов обратной связи k = 1.1000 1.9000 1.7000 >> Heq=tf(k,cc) % ПФ ПД-регулятора в цепи главной обратной связи Transfer function: 1.1 s^2 + 1.9 s + 1.7 --------------------s + 2 >> wh=feedback(w*K,Heq) % передаточная функция замкнутой системы Transfer function: 10 s^2 + 40 s + 40 --------------------------------s^4 + 14 s^3 + 46 s^2 + 64 s + 40 >> ww=minreal(wh) % главная ПФ после удаления лишних корней Transfer function: 10 s + 20 -----------------------s^3 + 12 s^2 + 22 s + 20 Получили систему с ПДД-регулятором в цепи главной обратной связи (передаточная функция Heq(s)), обеспечивающую те же характеристики (нулевую установившуюся ошибку, заданный вид полинома), что и система с обратными связями по всем переменным состояния (рисунок 132). 3 K 1 10 r 1.1 u 1 s x3 1 1 s 2 x2 1 s+1 x1 1 y 3 k3 0.8 k2 0.9 k1 Рисунок 132 Проверим это. Воспользовавшись матрицей преобразования Т, найдем значения коэффициентов обратной связи системы в исходном виде, подставим их в модель, созданную в среде Simulink и вычислим числитель и знаменатель передаточной функции созданной системы >> kk=k*T % запишем вычисленные значения в блоки k1, k2, k3 модели kk = 0.9000 0.8000 1.1000 >> [ne,de]=linmod('untitled') % получим ПФ модели без названия 245 Returning transfer function model ne = 0 -0.0000 10.0000 20.0000 de = 1.0000 12.0000 22.0000 20.0000 На практике для измерения чаще всего доступна лишь выходная переменная объекта y(t), поэтому для оценки неизмеряемых переменных состояния применяют специальное устройство – наблюдатель состояния. В его основе лежит модель объекта управления в виде набора интеграторов, охваченных прямыми связями с коэффициентами передачи b0 ... bm и обратными связями с коэффициентами передачи a10 ... an0 (рисунок 43). Функция reg(plant,k,L) помогает построить регулятор для заданного в пространстве состояний объекта регулирования Plant, используя матрицу k обратных связей по оценкам переменных состояния x̂ и матрицу L коэффициентов передачи наблюдателя, входящего в соРисунок 133 став регулятора (рисунок 133). Обычно коэффициенты матрицы k выбираются с помощью функции place() или LQG-проектирования. Подразумевается при этом, что объект полностью управляем и наблюдаем. При стандартном описании объекта матрицами A, B, C, D проектируемому регулятору соответствует набор матриц Ан, bн, сн xˆ A LC (B LD)k xˆ Ly A í xˆ b í y u kxˆ c í xˆ Такой регулятор связан с объектом контуром положительной ОС, поскольку минус содержится в матрице k – эта матрица будет находиться на месте матрицы сн наблюдателя. Размерность матрицы L соответствует размерности матрицы В объекта, она и будет помещаться на место матрицы bн наблюдателя: записываем в матрицу 1 на месте х3, поскольку по правилам MATLAB переменные назначаются от входа системы к выходу Полюса наблюдателя должны обеспечивать ускоренное затухание переходного процесса оценки переменных состояния – задав желаемые значения полюсов матрицей Ан и матрицу L, можно получить необходимую матрицу k=(А–Ан–LC)(B–LD)-1. Сформируем объект регулирования plant и перейдем к его описанию переменными состояния >> plant=tf(1,[1 2 3 4]); plant=ss(plant); 246 >> [a,b,c,d]=ssdata(plant) % описание объекта SS-моделью a = -2.0000 -1.5000 -2.0000 2.0000 0 0 0 1.0000 0 b = 0.5000 0 0 c = 0 0 1 d = 0 >> v=roots([1 3 3 2]); % формируем вектор полюсов замкнутой системы >> k=place(a,b,v) % вычисляем матрицу обратных связей как обычно k = 2.0000 -0.0000 -2.0000 >> L=[0;0;1]; % задаем матрицу коэффициентов наблюдателя >> compensator=reg(plant,k,L) % формируем регулятор по двум матрицам a = x1 x2 x3 x1 -3 -1.5 -1 x2 2 0 0 x3 0 1 -1 b = u1 x1 0 x2 0 x3 1 c = x1 x2 x3 y1 -2 3.997e-015 2 d = u1 y1 0 Input groups: Name Channels Measurement 1 Output groups: Name Channels Controls 1 Continuous-time model. Практический выбор параметров ПИД-регулятора, включенного последовательно с объектом, можно выполнить в среде Simulink. Выбрав из библиотеки элементов Simulink Extras-Additional Linear ПИДрегулятор (PID Controller), составим структурную схему замкнутой системы регулирования с запаздыванием, как наиболее сложной для реализации (рисунок 134). На входе системы подключим источник 247 ступенчатого сигнала Step (библиотека Sources), на выходе индикатор Scope (библиотека Commonly Used Blocks) и блок настройки Signal Constraint (библиотека Simulink Response Optimization). 1 PID Step PID Controller 4s2 +2s+1 Transport Delay W3 Signal Constraint Scope Рисунок 134 В блоке Step зададим момент скачка, равный нулю, время запаздывания в блоке Transport Delay ставим равным 1 с и обязательно указываем порядок аппроксимации, например, второй. Дважды щелкнув на изображении регулятора, вписываем вместо чисел символические обозначения изменяемых коэффициентов Kp (пропорциональная часть), Ki (интегральная часть) и Kd (дифференцирующая часть). Дважды щелкнув на блоке Signal Constraint, откроем окно параметров этого блока, в котором красными линиями заданы границы рабочей зоны переходного процесса, определяемые тремя параметрами: временем регулирования (узкая зона вдоль линии установившегося значения), время нарастания (первый выступ снизу) и перерегулирования (выступ сверху). Через меню Optimization-Tuned Parameters открывается окно, в котором после импорта командой Add можно указать минимальное, максимальное, начальное и типичное значения настраиваемых параметров Kp, Ki, Kd. Кнопкой Start в блоке Block Parameters: Signal Constraint запускается процесс выбора параметров, отображаемый в окнах этого блока, Scope и Optimization Progress. Если за установленное число итераций решение не найдено, процесс подбора останавливается, а в случае успеха выводятся рекомендуемые значения коэффициентов. Интервал исследования задается в меню Optimization-Simulation Options, масштаб отображения в меню Edit-Axes Properties. Можно убрать прошлые графики Plots-Clear Plots, масштабировать по уровню 1,0 EditScale Constraint, сбросить предыдущие установки Edit-Reset Constraint. Установив в блоке Transport Delay задержку 1 с и порядок аппроксимации 2, задали границы допустимой области переходного процесса по времени нарастания 3,5 с, по времени регулирования 5 с для величины перерегулирования 25 % (рисунок 135). Требуемый вид переходного процесса регулирования получен при значениях коэффи- 248 циентов Kd = 3.1051, Ki=0.3525, Kp=1.5335. Рисунок 135 Моделирование поведения системы подтверждает, что наличие в системе транспортной задержки значительно ухудшает время нарастания и регулирования (больше, чем само время задержки τ). 6.17 Преобразования базиса Преобразовывать модель системы из одного представления в другое приходится в разнообразных целях, в частности, при проектировании модальных регуляторов необходимо перейти к канонической форме управляемости и затем обратно. Как указывалось в разделе 4, новая система уравнений состояния и наблюдения имеет вид h (t ) PAP 1h(t ) PBu (t ) y (t ) CP 1h(t ) Du(t ) откуда следует, что матрицы коэффициентов новой системы равны Ah=PAP-1, Bh=PB, Ch=CP-1, kh = kP-1. Задаваясь произвольной матрицей Р необходимого размера, можно получить бесконечное множество описаний одной и той же системы в пространстве состояний. Однако при любых преобразованиях исходная и преобразованная система должны иметь одинаковые собственные значения, а преобразование подобия не должно менять передаточную функцию системы. Рассмотрим преобразование произвольной системы к канонической управляемой форме, канонической наблюдаемой форме и представлению с диагональной матрицей А, составленной из собственных значений системы. Перейдем к пространству состояний от описания системы передаточной функцией 249 >> w=tf([1 2 3],[1 6 11 6]) Transfer function: s^2 + 2 s + 3 ---------------------s^3 + 6 s^2 + 11 s + 6 >> sys=ss(w); >> [A,b,c,d]=ssdata(sys) A = -6.0000 -2.7500 -1.5000 4.0000 0 0 0 1.0000 0 b = 2 0 0 c = 0.5000 0.2500 0.3750 d = 0 Имея цель создать описание с диагонализированной матрицей А, матрицу Т собственных векторов системы, обратную к матрице преобразования Р, и преобразованную матрицу Аd с комплексными значениями собственных чисел (корней характеристического полинома), можно получить стандартной функцией eig(). >> [T,Ad]=eig(A) T = -0.5797 0.4082 0.7730 -0.8165 -0.2577 0.4082 Ad = -3.0000 0 0 -2.0000 0 0 0.1741 -0.6963 0.6963 0 0 -1.0000 Используя функцию ss2ss(), создадим преобразованное к диагональному виду описание системы (по диагонали матрицы А размещаются полюса системы, в том числе комплексные) >> P=inv(T); sysd=ss2ss(sys,P) a = x1 x2 x1 -3 -8.438e-015 x2 1.155e-014 -2 x3 -3.109e-015 3.553e-015 b = u1 x1 -15.52 x2 -19.6 x3 5.745 250 x3 -7.994e-015 -1.155e-014 -1 c = y1 d = y1 x1 -0.1932 x2 0.1531 x3 0.1741 u1 0 и проверим его правильность, восстановив передаточную функцию >> tf(sysd) Transfer function: s^2 + 2 s + 3 ---------------------s^3 + 6 s^2 + 11 s + 6 Рассмотрим приведение к канонической управляемой форме. В этом случае, как мы уже обсуждали (раздел 4), вид матрицы А (сопровождающей или матрицы Фробениуса) полностью определяется характеристическим полиномом, вид матрицы В также формализован. Таким образом, формируем матрицы Ас и bс системы в канонической управляемой форме и вычисляем матрицы управляемости обеих систем, тогда матрица преобразования Р равна отношению матрицы управляемости новой системы к матрице управляемости исходной. >> Ac=fliplr(flipud(compan(poly(A)))) Ac = 0 1.0000 0 0 0 1.0000 -6.0000 -11.0000 -6.0000 >> bc=[0; 0; 1] bc = 0 0 1 >> q=ctrb(A,b); qc=ctrb(Ac,bc); p=qc/q p = 0 0 0.1250 0 0.1250 0 0.5000 0 0 >> sysc=ss2ss(sys,p) a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -6 -11 -6 b = u1 x1 0 x2 0 x3 1 c = 251 y1 d = y1 x1 3 x2 2 x3 1 u1 0 Проверим результат, самостоятельно осуществляя преобразования >> Ac=p*A/p Ac = 0 1 0 0 -6 -11 >> cc=c/p cc = 3 2 0 1 -6 1 Обязательным условием преобразования является невырожденность матрицы управляемости исходной системы, т.е. система должна быть полностью управляема и иметь ненулевой определитель. Процедура перехода к канонической наблюдаемой форме аналогична и отличается лишь тем, что используются матрицы наблюдаемости, причем матрица преобразования базиса вычисляется по отношению матрицы наблюдаемости исходной системы к матрице наблюдаемости новой. Очевидным условием возможности преобразования является полная наблюдаемость новой системы. >> Ao=fliplr(flipud(compan(poly(A)))) Ao = 0 1.0000 0 0 0 1.0000 -6.0000 -11.0000 -6.0000 >> co=[1 0 0]; n=obsv(A,c); no=obsv(Ao,co); >> P=n/no P = 0.5000 0.2500 0.3750 -2.0000 -1.0000 -0.7500 8.0000 4.7500 3.0000 >> syso=ss2ss(sys,P) a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -6 -11 -6 b = u1 x1 1 x2 -4 x3 16 c = 252 y1 d = y1 x1 1 x2 0 x3 0 u1 0 Произведем проверку самостоятельным вычислением матриц А, b новой системы и ее передаточной функции – результаты совпадают. >> Aо=P*A/P Aо = 0 1 0 0 0 1 -6 -11 -6 >> bo=P*b bo = 1 -4 16 >> tf(syso) Transfer function: s^2 + 2 s + 3 ---------------------s^3 + 6 s^2 + 11 s + 6 Обратный переход (возвращение к исходной системе), например, после выбора параметров модального регулятора, во всех случаях осуществляется применением матрицы Р в обратном порядке, т.е. A=P-1AhP, B=P-1Bh, C=ChP, k = khP или обратной матрицы inv(P) в функции ss2ss(). Например, для системы, приведенной к канонической наблюдаемой форме >> sys=ss2ss(syso,inv(P)) a = x1 x2 x1 -6 -2.75 x2 4 -1.066e-014 x3 0 1 b = u1 x1 2 x2 0 x3 0 c = x1 x2 x3 y1 0.5 0.25 0.375 d = u1 y1 0 253 x3 -1.5 -7.105e-015 0 Литература 1 Егоров К.В. Основы теории автоматического регулирования. – 2-е изд., перераб. и доп. – М. : Энергия, 1967. – 648 с. 2 Теория автоматического управления: Под ред. А.В. Нетушила. – М. : Высш. шк., 1967. – 424 с. 3 Юревич Е.И. Теория автоматического управления. – Л. : Энергия, 1969. – 375 с. 4 Топчеев Ю.И., Цыпляков А.П. Задачник по теории автоматического регулирования. – М.: Машиностроение, 1977. – 592 с. 5 Сборник задач по теории автоматического регулирования и управления: Под ред. В.А. Бесекерского. – 5-е изд., перераб. – М. : Наука, 1978. – 512 с. 6 Электрические системы. Математические задачи электроэнергетики / Под ред. В.А. Веникова. – 2-е изд., перераб. и доп. – М.: Высш. шк., 1981. – 288 с. 7 Солодовников В.В., Плотников В.Н., Яковлев А.В. Основы теории и элементы систем автоматического регулирования. – М. : Машиностроение, 1985. – 536 с. 8 Теория автоматического управления. В 2-х ч. – Ч. 1. Теория линейных систем автоматического управления: Под ред. А.А. Воронова. – 2-е изд., перераб. и доп. – М. : Высш. шк., 1986. – 367 с. 9 Теория управления. Терминология. – М.: Наука, вып. 7, 1988. – 56 с. 10 Попов Е.П. Теория линейных систем автоматического регулирования и управления. – 2-е изд., перераб. и доп. – М. : Наука, 1989. – 304 с. 11 Топчеев Ю.И. Атлас для проектирования систем автоматического регулирования. – М.: Машиностроение, 1989. – 752 с. 12 Лукас В.А. Теория автоматического управления. – 2-е изд., перераб. и доп. – М. : Недра, 1990. – 416 с. 13 Избранные главы теории автоматического управления с примерами на языке MATLAB / Б.Р. Андриевский, А.Л. Фрадков. – СПб.: Наука, 2000. – 475 с. 14 Филлипс Ч., Харбор Р. Системы управления с обратной связью. – М.: Лаборатория Базовых Знаний, 2001. – 616 с. 15 Бесекерский В.А., Попов Е.П. Теория систем автоматического управления: Изд. 4-е, перераб. и доп. – СПб.: Профессия, 2003. – 752 с. 254 16 Лазарева Т. Я., Мартемьянов Ю. Ф. Основы теории автоматического управления. – 2-е изд., перераб. и доп. – Тамбов : Изд-во ТГТУ, 2004. – 352 с. 17 Ерофеев А.А. Теория автоматического управления. – 2-е изд., перераб. и доп. – СПб. : Политехника, 2005. – 302 с. 18 Мирошник И.В. Теория автоматического управления. Линейные системы. – СПб. : Питер, 2005. – 336 с. 19 Тетельбаум И.М., Шнейдер Ю.Р. Практика аналогового моделирования динамических систем: Справочное пособие. – М. : Энергоатомиздат, 1987. – 384 с. 20 Бороденко В.А. Методические рекомендации по математическому моделированию линейных систем на ЭВМ. – Алма-Ата : РИК, 1993. – 60 с. 21 Бороденко В.А. Теория автоматического управления. Лабораторный практикум. – Павлодар, Изд-во ПГУ, 2004. – 15 с. 22 Бороденко В.А., Баум С.В. Автоматизированное проектирование линейных систем управления в среде Дельфи. // Ученые записки ПГУ, №4(13), 2000. – C. 51-56. 23 Лазарев Ю.Ф. MatLAB 5.x. – К.: Издательская группа BHV, 2000. – 384 с. 24 Дьяконов В. МАТЛАБ 6: учебный курс. – СПб.: Питер, 2001. – 592 с. 25 Дьяконов В., Круглов В. MATLAB. Анализ, идентификация и моделирование систем. Специальный справочник. – СПб.: Питер, 2002. – 448 с. 26 Новгородцев А.Б. Расчет электрических цепей в MATLAB: Учебный курс. – СПб.: Питер, 2004. – 250 с. 27 MATLAB 6.х: программирование численных методов / Кетков Ю.Л. и др. – СПб.: БХВ-Петербург, 2004. – 672 с. 28 Бороденко В.А. Оценка устойчивости линейной системы по критерию Рауса в среде MatLAB 5.x. // Наука и техника Казахстана, №2, 2001. – С.180-185. 29 Бороденко В.А. Математические задачи энергетики и компьютерное моделирование. Лабораторный практикум. – Павлодар, Изд-во ПГУ, 2004. – 27 с. 30 Бороденко В.А. Оценка устойчивости линейных систем по результатам моделирования в MATLAB // Вестник ПГУ. Энергетика. – 2007. – №2. – С. 14-22. 255 Приложение А (справочное) Расчет числителей простых дробей Метод неопределенных коэффициентов (системы уравнений). Универсальный, хотя и громоздкий, метод, пригодный для любых корней характеристического полинома. Левую и правую часть разложения на простые дроби приводят к общему знаменателю, который отбрасывается. Приравнивая коэффициенты при одинаковых степенях s левой и правой частей равенства, составляют систему линейных алгебраических уравнений и решают ее любым известным методом. Пример. Изображение Y ( s ) 1 /( s 2 s ) разлагается на две дроби k k 1 0 1 s( s 1) s s 1 в соответствии с полюсами s1 = 0; s2 = -1. Приводим левую и правую части к общему знаменателю, отбрасывая его, группируем коэффициенты, приравниваем коэффициенты при одинаковых степенях s слева и справа 1=k0s +k0 + k1s = (k0 + k1)s + k0 при s0 → 1 k0 k =1 откуда 0 1 при s → 0 k0 k1 k1 = -1 Подставляем значения коэффициентов числителей Y (s) 1 1 s s1 и переходим по таблице соответствия от изображений к оригиналам y (t ) 1 e t . Метод подстановки полюсов (пригоден только для простых полюсов или дроби с полюсом максимальной кратности). Формула: k p ( s p) Y ( s) s p Пример: возьмем ту же функцию Y ( s) 256 k k 1 0 1 . s( s 1) s s 1 k0 ( s 0) 1 1; s( s 1) s 0 k1 ( s 1) 1 1 , s ( s 1) s 1 получили аналогичный результат. Действия сводятся к тому, что в знаменателе левой части равенства исключают полином с соответствующим полюсом, а в оставшуюся часть подставляют его значение. Метод вычисления производной (для простых полюсов). Формула: k p N ( s) . D( s) s p Пример: возьмем ту же функцию Y ( s) k k 1 0 1 . s( s 1) s s 1 От знаменателя изображения D(s) = s2 + s вычисляем производную D( s ) 2 s 1 и находим коэффициенты k0 1 1 1 ; k1 1 . 2 s 1 s 0 2 s 1 s 1 Метод вычисления производной (для кратных полюсов). Исходное изображение необходимо разделить на две части – часть, содержащую кратные корни, и оставшуюся часть F(s). Кратные корни в правой части выражения записывают по убыванию кратности (степени s). Пусть разложение функции имеет вид, где F ( s ) ( s p) j Y ( s ) Y ( s) Aj A1 A2 ... F ( s) , ( s p) ( s p) j ( s p) j 1 тогда формула для вычисления коэффициента числителя Ar (1< r ≤ j) дроби с кратным корнем 1 d r 1 F ( s ) Ar . (r 1)! dsr 1 s p Пример: дана функция с простым корнем s = -1 и корнем s = 0 с кратностью 3 A A A 1 k . Y ( s) 3 31 22 3 s s1 s ( s 1) s s Остаток после удаления кратных корней равен F(s) = 1/(s+1) = (s+1) . Коэффициенты А1 и k определяем другим способом, например, подстановкой полюсов -1 257 k1 1 s3 s 1 1 ; A1 1 1. s 1 s 0 Остальные коэффициенты 1 d 1 ( s 1 ) 1 1( s 1) 2 (2 1)! ds s 0 r=2 A2 r=3 1 d2 1 1 3 A3 ( s 1 ) 2 2( s 1) (3 1)! ds s0 2 s 0 1 , 1 s 0 и реакция в целом Y ( s) 1 1 1 1 2 3 s s1 s s y (t ) 0,5t 2 t 1 e t (изображение), (оригинал). Метод вычитания найденной дроби (для кратных полюсов). Пример: дана функция с простым корнем s = -1 и корнем s = 0 с кратностью 3 A A A 1 k . Y ( s) 3 31 22 3 s s1 s ( s 1) s s Находим сразу А1 = 1 любым методом, например, подстановкой полюсов. Вычитаем найденную дробь из левой части 1 1 s 1 A2 A3 k s s 1 s 3 ( s 1) s 3 s 3 ( s 1) s 2 ( s 1) s 2 и определяем А2 каким-либо методом, например, подстановкой полюсов s 2 (1) A2 2 1 . s ( s 1) s0 Снова вычитаем найденную дробь 1 1 s 1 A 1 . 2 2 3 s ( s 1) s s ( s 1) s( s 1) s s 1 2 Осталось найти методом подстановки полюсов А3 = 1 и k = -1, т.е. получены те же результаты, что и в предыдущем примере. 258 Приложение Б (справочное) Основы алгебры матриц Матрицей называется упорядоченный двумерный массив элементов. Матрица обозначается в тексте полужирным шрифтом прописным символом (вектор – строчным), ограничивается скобками вида ( ), [ ], || || и ни в коем случае не одинарными вертикальными линиями | |, т.к. это обозначение соответствует числу (определителю). a11 a A 21 ... an1 a12 a22 an 2 ... a1n i 1, n – индекс строки, – индекс столбца, ... a2 n aij , где j 1, m ... (n m) – размер матрицы, ... ann n – число строк, m – число столбцов. Индексы, представляющие собой число более десяти или выражение, записываются через запятую, например ai, k+1. Элементы aij|i=j образуют главную диагональ матрицы. Множество элементов, принадлежащее отрезку, соединяющему правый верхний угол с левым нижним, называется побочной диагональю. Матрица называется: - противоположной А, если она равна –А; - транспонированной относительно А, если ее столбцы равны строкам, а строки – столбцам исходной матрицы А (если A 1 2 , то 3 4 1 3 ). A' AT 2 4 Свойства операции транспонирования: (Ak)T=kAT; (A + B)T = AT + BT; (BA)T = ATBT; (AT)T = A; - квадратной, если n = m, тогда n – порядок матрицы; векторомстолбцом, если m = 1; вектором-строкой, если n = 1; скаляром, если m = n =1. Квадратная матрица называется: - нулевой, если aij = 0, например O 0 0 ; 0 0 - верхней треугольной, если aij 0 - нижней треугольной, если aij 0 259 i j i j , например , например 1 2 3 ; U R 0 4 5 0 0 6 1 0 0 ; L 2 4 0 3 5 6 - симметричной, если aij a ji i j - диагональной, если aij 0 , обозначается diag[a11 , a22 ,..., ann ] ; i j - единичной, если aij 0 ïðè ; i j 1 ïðè i j , обозначается E, I, 1, пример 1 0 . 1 0 1 Размер единичной и нулевой матриц всегда может быть выбран в соответствии с выполняемой операцией. Матрице можно поставить в соответствие специальные числа: определитель, след, ранг, норму, собственное значение и т.п. След матрицы равен сумме ее диагональных элементов. Обозначение SpA или TrA, пример: A 1 2 , SpA 1 4 5 . 3 4 Правильным называется произведение n элементов квадратной матрицы с последовательно возрастающими индексами строк и столбцов. При нарушении последовательности индексов строк или столбцов произведение берется с минусом. Определителем матрицы называется алгебраическая сумма всех ее правильных произведений с учетом знака. Определитель (детерминант) обозначается D, Δ, detA, |A|. Пример: det 1 2 1 4 2 3 2 . 3 4 Определитель существует только для квадратной матрицы, он не изменяется при транспонировании матрицы. Определитель произведения матриц равен произведению их определителей. Матрица, определитель которой равен нулю, называется особой (вырожденной, сингулярной), матрица с ненулевым определителем соответственно регулярной (неособой, невырожденной). Вычеркнем в матрице А i-строку и j-столбец. Определитель полученной матрицы (n-1)-го порядка называют минором элемента aij в определителе матрицы А и обозначают через Mij. Алгебраическое дополнение элемента aij равно Aij (1) i j M ij . Порядок наибольшей подматрицы, минор которой не равен нулю, называется рангом матрицы А (обозначается RangA или RankA). Матрица является неособой, если имеет полный ранг, равный ее порядку. Ранг матрицы не изменяется при транспонировании. Пример: определитель матрицы A 1 2 равен Δ2 = 0, однако есть минор пер1 2 вого порядка Δ1 = 2 ≠ 0, поэтому ранг матрицы RankA = 1. 260 Если матрица приведена к трапецеидальному виду, ранг матрицы равен числу ее диагональных элементов. Пример: 1 2 3 0 1 2 3 0 1 2 3 0 A 2 3 8 7 0 7 14 7 0 7 14 7 1 1 1 1 0 1 2 1 0 0 0 0 Ненулевых диагональных элементов триангулированной матрицы два (1 и 7), поэтому RankA = 2. Матрицы равны при равенстве их размерностей и соответственных элементов. Складывать можно лишь матрицы с одинаковым числом строк и столбцов. Суммой двух матриц является матрица, каждый элемент которой равен сумме их соответственных элементов. Чтобы умножить матрицу на число, нужно каждый ее элемент умножить на это число. Произведение двух матриц определено, если число столбцов левой матрицы равно числу строк правой матрицы. Число строк результирующей матрицы равно числу строк левой матрицы, а число столбцов – числу столбцов правой матрицы. Матрицы называются сцепленными, если их произведение существует, и перестановочными, если результат их перемножения как слева, так и справа одинаков. Результат умножения как слева, так и справа любой матрицы на единичную всегда равен исходной матрице, на нулевую – нулевой. Операция деления соответствует умножению на обратную матрицу. Квадратная матрица А называется обратимой, если существует такая матрица А-1, для которой АА-1 = А-1А = 1. Матрица А-1 называется обратной к А. Матрица обратима только тогда, когда не является особой (когда ее определитель не равен нулю). Свойства обратной матрицы: (А-1)-1 = А, (АВ)-1 = А-1В-1. ~ Поскольку A1 adjA / det A A / A , где в числителе дроби находится присоединенная матрица, один из методов определения обратной матрицы связан с вычислением присоединенной матрицы (матрицы алгебраических дополнений). Присоединенной к матрице А называется матрица, полученная путем замены каждого элемента исходной матрицы его алгебраическим дополнением и транспонирования полученной матрицы. , Пример: A A 4 6 2 , 3 4 1 2 T (1)11 4 (1)1 2 3 4 2 adjA 3 1 , 2 1 22 (1) 2 (1) 1 261 A 1 1 1 4 2 2 . 2 3 1 1,5 0,5 Существует простое мнемоническое правило учета знака алгебраических дополнений (шахматка): после вычисления миноров знаки элементов матрицы изменяются в шахматном порядке, начиная с (+) у левого диагонального элемента. Кроме того, для вычисления присоединенной матрицы второго порядка достаточно в исходной матрице элементы главной диагонали поменять местами, а у элементов побочной диагонали поменять знаки. Число λ называется собственным значением (характеристическим числом) квадратной матрицы А порядка n, если можно подобрать такой n-мерный ненулевой вектор х, что Ах = λх. Если раскрыть определитель матрицы [λ·1 - A], то получится многочлен n-ой степени относительно λ 1 A a0 n a1n1 ... an a( ) , называемый характеристическим многочленом матрицы А, у которого а0 = 1, а an = |A|. Уравнение 1 A 0 называется характеристическим уравнением матрицы А. Иногда для него используется запись A 1 (1)n (a0n a1n1 ... an ) . 1 2 Пример: матрица A , 3 4 характеристическая матрица 0 1 2 1 2 , 0 3 4 3 4 1 A характеристический полином 1 2 3 4 2 5 2 , собственные значения λ1 = 5,415; λ2 = -0,415. Матрицы А и А* подобны, если выполняются требования равенства их характеристических полиномов a(λ) и собственных значений si det(λ1 - A) = det(λ1 - A*) = a(λ); λi {A} = λi {A*} = si. 262 Бороденко Виталий Анатольевич Учебное пособие Практический курс теории линейных систем автоматического регулирования Технический редактор Г.Н. Сейтахметова Компьютерная верстка М.А. Ескожинова Подписано в печать 01.06.2007 г. Гарнитура Times. Формат 29,7 х 42 ¼. Бумага офсетная. Усл. печ. л. 11,23. Тираж 500 экз. Заказ № 0094 Научный издательский центр Павлодарского государственного университета им. С. Торайгырова 140008, г. Павлодар, ул. Ломова, 64