Задание на выполнение работы

       1. Смоделировать нелинейную автономную систему (рис.6.1) с заданными линейной частью и нелинейностями, заданными в таблице 6.1.

           2. Задав на интеграторе начальные условия, наблюдать и снять процессы на выходе линейного (x(t)=y(t)) и нелинейного (z(t)) звеньев.

       3. По снятому процессу x(t) определить параметры автоколебаний.

       4. Наблюдать фазовый портрет, подавая на вход X сигнал x(t), а на вход Y - производную этого сигнала по времени (сигнал с выхода интегратора).

       5. Определить параметры автоколебаний по фазовому портрету.

Сравнить полученные параметры с вычисленными заранее.

 

Методические указания

       Определение параметров автоколебаний по фазовому портрету производится, исходя из следующих соображений. При x(t)=Хmsinωt dx(t)/dt=Хmωsinωt и фазовый портрет будет представлять собой эллипс, из которого можно найти параметры автоколебаний (см. рис. 6.4).

           Рис.6.4

Таблица 6.1

№ бригады 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
№ нелинейности 1 2 3 5 3 4 2 1 2 5 1 6 2 2 3
№ нелинейности 4 3 5 4 6 6 4 7 7 7 3 7 5 6 4

           Параметры нелинейностей: α=450, b=0.5, b1=0.25, b2=0.5, c=0.75, m=0.5.

Таблица 6.2

Статическая характеристика нелинейного элемента Ks(Xm) Kc(Xm)
1 Идеальная релейная 0
2 Релейная с зоной нечувствительности 0
3 Релейная с гистерезисной петлей    
4 Релейная с зоной нечувствительности при Xm>b    
5 С насыщением при Xm≥b 0

 


 

7 С насыщением и гистерезисной петлей при

                                                          Контрольные вопросы

  1. При каких предположениях и как выводятся уравнения гармонического баланса.
  2. В какой форме и как можно представить комплексный коэффициент усиления нелинейного звена?
  3. Выведите выражения, определяющие коэффициенты гармонической линеаризации.
  4. Что такое автоколебания, как определить их параметры, в каком случае имеют место устойчивые автоколебания?
  5. Выведите выражения коэффициентов гармонической линеаризации для заданных видов нелинейных элементов.

 


Литература

1. Теория автоматического управления. Ч. II. Под ред. Нетушила А.В., М.: Высш. школа, 1982, 400 c.

 


ПРИЛОЖЕНИЕ 1

Диалоговое окно Simulation Parameters

1) Вкладка Solver (Решатель ОДУ )

           Данная вкладка включает три группы опций. Первая группа опций Simulation time (Время моделирования) содержит текстовые поля для задания начального (Start time) и конечного (Stop time) времени интегрирования, где по умолчанию устанавливаются значения 0 и-10, соответственно. Группа опций Solver options (Опции решателя) включает раскрывающийся список Туре (Тип) для задания параметров управления шагом интегрирования и раскрывающийся список указания имени функции, которая интегрирует систему ОДУ. Все функции в основном разбиваются на две группы: функции, реализующие методы с переменным шагом интегрирования, и использующие методы с постоянным шагом интегрирования, некоторые функции относятся к обеим группам. В случае выбора пункта Variable step, становятся доступными текстовые поля Min step size (Минимальный размер шага интегрирования), Max step size (Максимальный размер шага интегрирования), текстовое поле Initial step size (Начальный шаг интегрирования) и текстовые поля Relative tolerance (Относительная погрешность) и Absolute tolerance (Абсолютная погрешность). При выборе пункта Fixed-step значение шага интегрирования задается в соответствующем текстовом поле. В группе опций Output options (Опции выходной переменной) выбирается способ формирования выходного массива.

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

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

           В случае выбора пункта Variable step в раскрывающемся списке Туре в группе опций Output options на вкладке Solver можно задавать расстояние между точками траектории выходной переменной. Данные опции не используются в случае формул интегрирования с постоянным шагом. Раскрывающийся список содержит три пункта: Refine output (Выход с уточнением), Produce additional output (Формирование расширенного выхода), Produce specified output only (Формирование установленного выхода).

           При выборе пункта Refine output между моментами времени интегрирования добавляются промежуточные точки, затем строятся кусочно-интерполирующие многочлены (последовательный сплайн-метод) и с их помощью рассчитываются промежуточные точки решения, что сокращает время решения задачи по сравнению с подходом, связанным с уменьшением шага интегрирования. Пункт Refine output выбирается, когда необходимо представить график изменения компонентов вектора выхода в зависимости от времени в виде гладких кривых. Если в раскрывающемся списке выбран пункт Refine output, то становится доступным текстовое поле Refine factor (Коэффициент для уточнения). Вводимый параметр — целое число. Система Simulink делит величину каждого шага на значение коэффициента Refine factor. Например, если значение коэффициента равно 2, каждый шаг интегрирования делится пополам, и значения решения будут добавлены к массиву выходных данных. Пункт Produce additional output (Формирование расширенного выхода) раскрывающегося списка Output option позволяет объединить и указать в строго возрастающем порядке элементы двух массивов — моментов времени интегрирования и фиксированных моментов времени, задаваемых пользователем в текстовом поле Output times (Моменты времени выхода). Например, если необходимо добавить вектор, компоненты которого являются моментами времени с интервалом 10 с, и при этом значения начального и конечного времени моделирования равны 0 и 100 соответственно, то в текстовое поле Output times следует ввести оператор вида [0:10:100].

           Выбор пункта Produce specified output only (Формирование установленного выхода) необходим для того, чтобы выходной массив содержал решения в установленные моменты времени. Например, можно выбрать данный пункт в случае, если необходимо сравнить несколько выходных массивов для оценки влияния изменения параметров блоков структурных схем.

 

Таблица 1.1

Функция                                                          Назначение ode45          Эффективный одношаговый решатель общего назначения. Реализуются явные методы Рунге-Кутты четвертого и пятого порядков точности. Функция ode45 выбирается системой по умолчанию и рекомендуется для интегрирования новой системы ОДУ; ode23         Используются методы Рунге-Кутты второго и третьего порядков. Рекомендуется для решения умеренно жестких задач. Функция требует меньшего размера шага интегрирования, чем функция ode45 для обеспечения сравнимой точности; odel 13       Реализуется метод Адамса-Башворта-Мултона переменного порядка. Функция odell3 использует многошаговые разностные методы, поэтому обеспечиваются такие же требования к точности, как для функций ode45 или ode23 при меньшем объеме вычислений производных в промежуточных точках, что обеспечивает более высокую скорость интегрирования. Функция не предназначена для интегрирования систем дифференциальных уравнений, правые части которых имеют разрыв. Описание функции odel 13 приводится в литературе по численным методам [2]; ode 15s         Используется формула неявного многошагового разностного метода (формула дифференцирования назад) с переменным порядком точности схемы для жестких задач. Если применение функции ode45 дает низкую скорость интегрирования, рекомендуется обращаться к функции ode 15s; ode23s        Реализуется модифицированный метод Розенброка с постоянным шагом и фиксированным порядком точности. Функция предназначена для интегрирования умеренно жестких задач с низкими требованиями по точности. Этот одношаговый решатель зачастую имеет большую скорость интегрирования, чем функция ode 15s. В случае жестких задач рекомендуется выбрать эффективный решатель путем сравнений; ode23t        Реализуется одношаговая разностная схема предиктор-корректор (метод трапеций). Рекомендуется для умеренно жестких задач. Функции ode23t и ode23tb имеют схожие алгоритмы, применяемые в решателе. Функция ode23t обеспечивает более высокую скорость интегрирования; ode23tb      Используется метод трапеций (подобно функции ode23t) на первом этапе, на втором — формула обратного дифференцирования. Имеет низкий порядок точности и меньшую скорость интегрирования, чем функция ode23t; discrete      Реализуется аналитический метод нахождения решения разностных уравнений с заданным шагом дискретности; ode5            Используется явный метод Рунге-Кутты пятого порядка точности с фиксированным шагом интегрирования. Данный алгоритм используется в функции ode45; ode4            Реализуется классический явный метод Рунге-Кутты четвертого порядка точности с фиксированным шагом интегрирования; ode3            Используется явный метод Рунге-Кутты третьего порядка точности с фиксированным шагом. Алгоритм используется в функции ode 23; ode2            Используется явный метод Рунге-Кутты второго порядка точности с фиксированным шагом; odel       Используется явный метод Эйлера с фиксированным размером шага.   

 

           При выборе пункта Produce specified output only в текстовом поле Output times вводится вектор, компоненты которого соответствуют требуемым моментам времени.

 

2) Вкладка Workspace I/O (Импорт и экспорт данных рабочей области)

           Вкладка Workspace I/O (Импорт и экспорт данных рабочей области) показана на рис. 1.11. С ее помощью можно загружать данные из рабочей области системы MATLAB и размещать выходные массивы в рабочей области. Вкладка содержит три группы опций: Load from workspace (Загрузка из рабочей области), Save to workspace (Размещение в рабочей области) и Save options (Сохранение значений опций).

 

Рис. 1.11. Вкладка Workspace I/O

 

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

           Система Simulink обеспечивает возможность доступа к вектору переменных состояния модели, с использованием вкладки Workspace I/O.

           Для загрузки массива данных, включающего вектор, компоненты которого являются моментами времени, в группе опций Load from workspace устанавливается флажок Input (Входные данные). Операция загрузки выполняется совместно с блоком In из библиотеки блоков Sources. Блок In (Входной порт) конфигурируется для скалярных и векторных переменных. В текстовом поле Input задается оператор, включающий имена переменных, которым присваиваются значения массива моментов времени (по умолчанию задается имя переменной t) и массива (по умолчанию имя переменной и), включающего столбцы, каждый из которых соответствует компоненту вектора входной переменной (каждая строка массива соответствует моменту времени). Если заданы более чем один блок In, номера столбцов входного массива устанавливаются в соответствии с числом — индикатором, определенным для блоков In. Первый столбец в массиве соответствует блоку с наименьшим номером, последний столбец — блоку In с наивысшим номером. Если блок In имеет вектор входной переменной, то для каждого компонента вектора задается вектор-столбец в массиве и.

           Для загрузки начальных состояний, соответствующих внутренним переменным состояния из рабочей области системы MATLAB, на вкладке Workspace I/O следует установить флажок Initial state (Начальное состояние).

           Все вектора переменных состояния системы Simulink имеют заданные по умолчанию начальные значения (в большинстве случаев устанавливается 0). Начальные условия для блоков Integrator могут быть заданы в диалоговом окне блока. Редактирование начальных условий, заданных по умолчанию, включая значения, установленные в диалоговом окне блока Integrator, осуществляется на вкладке Workspace I/O. В текстовом поле Initial state задается имя переменной, которой присваивается значение вектора начальных состояний модели (по умолчанию имя переменной xI-nitial), которая размещается в рабочей области системы MATLAB перед запуском процесса моделирования. Вектор начальных состояний должен иметь размерность, равную размерности вектора переменных состояния модели, это может быть вектор-столбец или вектор-строка.

           В текстовом поле Time (Моменты времени) задается имя переменной, которой присваивается значение указанного массива (по умолчанию имя переменной tout).

           В текстовом поле States (Состояния) задается имя переменной, которой присваивается значение массива в рабочей области системы MATLAB (по умолчанию имя переменной xout). Операция размещения массива в рабочей области выполняется совместно с блоком Out (Выходной порт) и аналогична рассмотренному ранее взаимодействию с блоком In. В текстовом поле Final state (Конечное состояние) задается имя переменной, которой присваивается значение вектора переменных состояния для момента времени окончания моделирования (по умолчанию имя переменной xFi-nal), размещенного в рабочей области. Данный вектор можно использовать для задания начальных состояний (текстовое поле Initial state) для выполнения процесса моделирования, начальное время которого равно конечному времени предыдущего процесса.

           Группа опций Save options вкладки Workspace I/O связана с хранением переменных в рабочей области. В текстовом поле Limit data points to last устанавливается максимальное количество элементов массива, размещаемого в рабочей области системы MATLAB. Например, если установлен флажок Limit data points to last и в соответствующем текстовом поле вводится значение 1000, это означает, что последние 1000 точек массива хранятся в рабочей области. В текстовом поле Decimation (Коэффициент выборки) задается целое число — коэффициент выборки для массива, создаваемого в рабочей области: если значение равно 2, тогда только каждая вторая строка массива размещается в рабочей области, если задано 1, то сохраняются все точки массива. В раскрывающемся списке Format выбирается пункт, соответствующий типу данных: тип данных числовой массив Array (устанавливается по умолчанию) или тип данных массив записей, в котором в одном случае полю моментов времени присваивается некоторое значение (StructureWithTime), а в другом случае присваивается пустой массив (Structure).

 

3) Вкладка Diagnostics (Диагностика)

           На вкладке Diagnostics (рис. 1.12) определяются действия в случае возникновения заданных ситуаций, устанавливаются опции для автоматической проверки непротиворечивости параметров выходных переменных блоков и контроля предельных значений. На данной вкладке в группе опций Action имеются три переключателя. Если устанавливается переключатель None (Нет), то система Simulink игнорирует указанную ситуацию. При установке переключателя Warning (Предупреждение) или Error (Ошибка) в случае возникновения данных ситуаций выводится предупреждение или прерывается процесс моделирования и выдается сообщение об ошибке, соответственно.

 

Рис. 1.12. Вкладка Diagnostics

           Алгебраические контуры являются свойством модели, которое указывает, что в каком-либо канале между входами и выходами модели отсутствуют динамические звенья. Контуры без динамических звеньев значительно снижают скорость интегрирования, а в ряде случаев процесс моделирования прерывается. Для пункта Algebraic loop рекомендуется установить переключатель Warning. Если в модели допускается использование алгебраических контуров, то следует установить переключатель в положение None.

           Ситуация Min step size violation (Нарушение условия на минимальный размер шага) возникает, когда функция интегрирования вынуждена использовать размер шага, значение которого меньше, чем фиксированная величина, заданная на вкладке Solver в текстовом поле Min step size, что для формул с переменным шагом интегрирования не допускается. При возникновении данной ситуации применяются формулы интегрирования меньшего порядка точности. Кроме этого, можно увеличить значения допустимых относительной и абсолютной погрешностей, задаваемых на вкладке Solver. Для ситуации Min step size violation необходимо установить переключатель Warning или Error, так как данное событие показывает, что численное интегрирование выполняется только при низких требованиях к точности.

           Ситуация Unconnected block input (Несоединенный входной порт блока) возникает, когда блок имеет входной порт, который не используется. Зачастую это происходит в результате некорректно построенной модели. В этом случае следует установить переключатель Error или Warning. Если данная неточность задания входного порта блока является преднамеренной, тогда выходной порт блока Ground (заземление) из библиотеки блоков Sources (Источники сигналов) соединяется с упомянутым входным портом.

           Ситуация Unconnected block output (Несоединенный выходной порт блока) возникает, когда блок имеет выходные порты, не соединенные с входными портами других блоков. Способом ее разрешения является соединение неиспользованных выходных портов блока с входным портом блоков Terminator (Оконечная нагрузка) из библиотеки блоков Sinks (Средства регистрации). Данная ситуация требует установки переключателя Warning или Error.

           Ситуация Unconnected line (Несоединенная линия связи) почти всегда обусловлена ошибкой в построении модели системы Simulink и возникает, если конечная точка линии связи не связана с входным портом блока. В данном случае устанавливается переключатель Error.

           Ситуация -1 sample time in source (В источнике период квантования -1) возникает, когда для периода квантования блока источника сигнала задается значение, равное -1. Это показывает, что блок источника сигнала должен считывать значение периода квантования из блока, с которым он соединен. Это не является ошибкой, однако, для блоков источников сигналов целесообразно задавать данную величину в явном виде. Эта ситуация на первом этапе должна обрабатываться с установленным переключателем Warning, затем при задании в соответствующих блоках значений периода квантования переключатель устанавливается в None.

           Ситуация Unneeded type conversion (He требуемый тип преобразования) появляется, когда происходит переопределение типа переменной, которое не является необходимым, и, при этом, данное преобразование не является некорректным. В данном случае устанавливается переключатель None.

           Ситуация int 32 to float conversion (Преобразование типа целое с 32 битами на элемент в форму числа с плавающей точкой) может привести к накоплению погрешностей округления и оказать влияние на результирующую погрешность. Для данного пункта устанавливается переключатель Warning или Error.

           Ситуация Data overflow (Переполнение разрядной сетки) встречается, когда величина амплитуды сигнала или значение элемента внутреннего массива превышает предельное значение, заданное для их типа данных. Переполнение разрядной сетки во всех случаях является серьезной ошибкой, поэтому данная ситуация обрабатывается при установке переключателя Error или Warning.

           В группе опций Simulation options (Опции моделирования) в раскрывающемся списке Consistency checking (Проверка на непротиворечивость) выбирается значение, позволяющее выполнять действия при возникновении ошибок в блоках пользователя. Проверка на непротиворечивость не является обязательной при использовании стандартных блоков системы Simulink, однако данные ситуации уменьшают скорость интегрирования. Обычно, для опции Consistency checking задается значение None.

4) Вкладка Advanced (Экспертные настройки)

           Вкладка Advanced (Экспертные настройки) (рис. 1.13) позволяет задавать ряд опций для управления скоростью интегрирования, размером памяти, выделяемой под процесс, фиксацией события пересечения нулевого значения и ослаблением правил для переменных булевского типа, контролируемых в ряде блоков. Для этих опций устанавливаются значения on или off. Модели ряда блоков системы Simulink описываются функциями, имеющими разрывы. Например, выходная переменная блока Sign (Знак) из библиотеки блоков Nonlinear (Нелинейности) имеет значение, равное 1, если входная переменная имеет положительное значение, 0, если вход равен 0, или -1, если входной сигнал является отрицательным. Данная функция имеет разрыв в точке нуль. При использовании функции интегрирования, реализующей формулу с переменным шагом интегрирования, значение шага будет пересчитываться, когда входная переменная блока Sign приблизительно равна 0. Данное явление связано с фиксацией события пересечения нулевого значения. Выявление данных событий помогает повысить точность процесса моделирования, однако, в ряде случаев происходит снижение скорости интегрирования, наблюдается процесс колебаний с большой частотой около точки разрыва (данное явление называется «дребезг») и процесс интегрирования может практически остановиться, т. к. размер шага уменьшается до очень малого значения.

Рис. 1.13. Вкладка Advanced

 

           Если модель включает несколько блоков, для которых фиксируются события пересечения нулевого значения, то для увеличения скорости интегрирования для опции Zero crossing detection (Обнаружение пересечения нулевого значения) устанавливается значение on. Следует иметь в виду, что при этом может возрасти погрешность расчета вектора решения. Данный подход используется при возникновении явления «дребезг». Если задание значения on для опции Zero crossing detection значительно повышает скорость интегрирования, то следует выявить и, по возможности, устранить причину возникновения указанного явления.

           Для управления памятью в системе Simulink используются буферы памяти, которые поддерживают не все линии связи. Блоки Floating Scope (Плавающий осциллограф) применяются для визуализации переменных, что требует выделения памяти для линий связи, и поэтому для опции Signal storage reuse (Многократное использование памяти для сигнала) задается значение off. Эти операции выполняются на этапе построения модели и ее отладки, т. к. после запуска моделирования будет наблюдаться ухудшение показателей эффективности процесса моделирования и использования памяти.

           Ряд блоков системы Simulink, таких как блоки логики, имеют на входе массивы переменных, описываемых булевским типом данных, которые будут выдавать сообщение об ошибке, если тип данных входной переменной не является булевским. Для подавления сообщения об ошибке для опции Boolean logic signals указывается значение off. Это обеспечивает совместимость с более ранними версиями системы Simulink, в которых использовались числовые массивы удвоенной точности в форме с плавающей точкой. При установке значения off для опции Boolean logic signals блоки логики будут допускать переменные в форме с плавающей точкой. В этом случае значению 0.0 соответствует булево значение False, а любому другому значению — булево значение True.


 

СОДЕРЖАНИЕ

 

  Лабораторная работа № 1. Изучение программного комплекса по моделированию и исследованию динамических систем “Simulink”. Исследование типовых динамических звеньев.................... 3
     
  Лабораторная работа № 2. Исследование качества систем автоматического управления................ 29
     
  Лабораторная работа № 3. Коррекция систем автоматического управления....................... 40
     
  Лабораторная работа № 4.Исследование линейных импульсных автоматических систем...............   51
     
   Лабораторная работа № 5. Исследование релейных систем автоматического регулирования методом фазовой плоскости............................... 59
     
  Лабораторная работа № 6. Исследование нелинейных систем автоматического управления методом гармонического баланса........................... 68
     
  ПРИЛОЖЕНИЕ 1.Диалоговое окно Simulation Parameters   78

Учебное издание

 

 


Т.В. Ягодкина, С.А. Хризолитова, В.М. Беседин,

О.А. Бондин, Е.Н. Грачев

 

 

ИССЛЕДОВАНИЕ САУ С ИСПОЛЬЗОВАНИЕМ

ПРИКЛАДНОГО ПАКЕТА MATLAB

 

 

Лабораторный практикум

по курсу

«Основы автоматического управления»

 

 

Редактор М.Б. Коломейцева

Технический редактор Е.Н. Касьянова

 

Темплан издания МЭИ 2006 (II), метод.

Подписано к печати 11.02.2006г.

Формат бумаги 60х84/16

Физ. печ. л. 3,25 Тираж 50         Изд.N242                      заказ

 

 

Издательство МЭИ, 111250, Москва, Красноказарменная, д.14

Типография Издательства МЭИ, Красноказарменная, 13

           





Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: