Главная страница  Цифровые системы 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [ 14 ] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90]

Примеры систем с существенными нелинейностями:

различные виды реле (с зоной нечувствительности, гистерезисом и т.

- клапаны (зоны нечувствительности, насыщение);

- нелинейные деформации механических пружин;

- падение давления в сужении трубы;

- силы трения;

- аэродинамическое сопротивление;

- свойства пара;

- двигатели постоянного тока с последовательной обмоткой возбуждения {щ. мент - функция квадрата тока роторной цепи);

- двигатели переменного тока.

Нелинейные системы (см. примеры 3.8 и 3.9 в разделе 3.2.3) можно описать в следующем виде

-Мх,х2,:.,х„,щ,....и;)

dx dt

= /„(.ri,X2,...,x„,M,.....",)

где определены п переменных состояния и г входов, или в компактной векторнс форм:

= f(x, u)

(3.51

где вектор состояний х и вектор управления и определены в разделе 3.3.2, а каждые компонент вектора f является функцией

В состоянии равновесия производные ix/u??: равны нулю. Пусть точке равновесЖ X соответствует постоянный управляющий сигнал й, тогда условие равновесия

f(x, й) = о

Заметим, что уравнение (3.6) эквивалентно п скалярным уравнениям. Эти ура» нения могут иметь несколько решений, каждое из которых соответствует некотор точке равновесия.

Датчики тоже могут вести себя нелинейно (глава 4). В частности, у Датчиков т пературы или давления выходной сигнал нелинейно зависит от измеряемой фй ческой величины. Такая зависимость может быть линейной для малых значений с нала и нелинейной - для больших. Поэтому уравнение (3.2) нужно переписат более общем виде

у У =gi(.ri,X2,-.-яи-"1.-, г<,.)

Jl(.ri,X2,....x„,«i,..., и,)

II пи более компактно в матричных обозначениях

y(0 = g(x(0,u(0)

(3.7)

.де компоненты вектора g суть функцииgj, -.gp

g = (gi • ёрУ

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

3.3.7. Численное моделирование динамических систем

Для решения нелинейных дифференциальных уравнений в большинстве случаев используются численные методы. Основной метод решения дифференциальных уравнений - аппроксимация производных по времени простыми разностными уравнениями. Этот метод называется аппроксимацией Эйлера с восходящими разностями

x(t +h)~ x(t) + h f(x(t), u(t))

Если известны начальные условия х(0), то можно рассчитать состояния х(/г), х(2/г), х(3/г), ,„, которые являются приближениями точного решения в моменты вре-.мени h, 2h, 3h и т, д. Здесь очень важно выбрать шаг (step) интегрирования h, который, в принципе, должен быть как можно меньше, однако на практике выбирается некая компромиссная величина. Слишком маленький шаг приведет к неоправданно большому времени вычислений (которое, естественно, еще серьезно зависит от сложности вычислений, типа уравнений, числа переменных и мощности процессора), С другой стороны, слишком большое значение h вызывает проблемы сходимости решения и приводит к нежелательным результатам. Эффект неправильно выбранного шага может оказаться очень существенным, особенно если моделируемая система включает в себя и быстрые, и медленные динамические процессы.

Пример 3.16

Проблема слишком большого шага

Для иллюстрации проблемы слишком большого шага рассмотрим простую систему, описываемую уравнением первого порядка

---= -а-х dt

тде,г(0) = 1 и я > О, Уравнение имеет аналитическое решение

x{t)-e-"

другой стороны, дифференциальное уравнение можно решить численно методом Эйлера, При аппроксимации производной конечной разностью

4 3ак-

1021



Глава 3. Описание ищдедароюаУВЩеиств

cbc{t) x(t + h)- x{t) dt ~ h

решение имеет вид

x{t + h)~x{t)-h-a- x(t) = {\-h-a)-x{t) a б

3 Непрерывныеыорттнамтестхсистем


Рис. 3.16. Численное решение дифференциального уравнения первого порядка dx/dt = -ах при а = 2 и различном шаге интегрирования h: а - h = 0.05 6-h = 0.1 и 0.4

На рис. 3.16 показано, что происходит при различных значениях шага h. В общем случае для больших значений h - таких, что \i-ha\ > 1, т. е. /г > 2/а, решение х будет иметь колебательный характер с изменением знака и ростом амплитуды. Проблема возникновения колебаний из-за слишком большого шага интегрирования называется численной неустойчивостью. Эта неустойчивость не имеет ничего общего с самой системой и вызвана только слишком грубой аппроксимацией при вычислении решения.

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

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

, проверять согласованность уравнений;

- переупорядочивать уравнения для оптимизации итерационного процесса; интегрировать уравнения;

отображать результаты в требуемой форме (таблица или график).

Современные пакеты моделирования обеспечивают набор простых команд для изменения параметров или начальных условий и несколько алгоритмов интегрирования, из которых можно выбрать наиболее подходящий для конкретной задачи. Они также имеют развитые возможности отображения результатов в легко воспринимаемой графической форме. На рынке есть несколько мощных пакетов моделирования - Mathematica, Sifflnon, Matlab, Siraulink, Easy-5 и ACSL существуют в версиях для различных вычислительных платформ. Программа Matlab быстро приобрела большую популярность как аналитический инструмент, поскольку она поддерживает несколько математических методов: матричные вычисления, методы линейной алгебры, идентификацию параметров, анализ временных рядов и синтез систем управления. Диаграммы, приведенные в этой книге, были получены с помощью программы Simnon, разработанной на кафедре автоматического управления Lund Institute of Technology.

Программы Simnon и ACSL являются пакетами моделирования, ориентированными на уравнения, т. е. системы в них описываются обыкновенными дифференциальными уравнениями. Другие программы моделирования, например Easy-5 и Simulink, снабжены готовыми модулями описания элементов процессов; пользователь имеет возможность добавить к пакету свои собственные модули. Идея таких пакетов заключается в объединении нескольких модулей в единый процесс. В остальном они содержат те же самые средства численного интегрирования и взаимодействия с пользователем, что и программы, ориентированные на уравнения.

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

или в виде

и = R-i

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

Рамках модели. Примером объектно-ориентированного пакета моделирования яв-

яется Dymola фиРмь! Dynasim АВ (г. Лунд, Швеция). Dymola, разработанная Хил-Нгом Елмквистом (Hilding Elmqvist), автором программы Simnon, является инст-

yfCHTOM для построения сложных моделей, которые затем обрабатываются другой программой,

Hanpiep Simnon или Simulink.



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

(ecTf.


ми системами управления и могут обрабатывать поступающие от них данныТ" ственно, при этом команды не посылаются в реальный технический процесс)

3.4. Дискретные модели динамических систем

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

Ниже излагается модель физического процесса, пригодная для приложений компь ютерного управления. В соответствии с рассматриваемой моделью измеряемые данные процесса собираются через регулярные интервалы времени. Эти интервалы ш обязательно должны быть одинаковыми, однако описание дискретной динамически модели становится проще при постоянном интервале. Данный процесс называется выборкой, дискретизацией (sampling) или квантованием, длина интервала - временем (периодом, интервалом) выборки, дискретизации (sampling time) или квантования Практические методы дискретизации сигналов детально обсуждаются в разделе 5.1.

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

3.4.1. Описание в пространстве состояний

Нелинейный процесс [уравнение (3.5)] можно аппроксимировать разностным уравнением

x[(k+i)h] ~x(kh) + h-i(x,u)

(3.8)

где h - интервал выборки и - его порядковый номер; f(x, и) - производная по £ мени вектора состояния системы х в соответствии с уравнением (3.5). Аппроксима ция справедлива, если h достаточно мал и производная "гладкая". Разностное урав пение по существу такое же, что и при численном моделировании (раздел 3.3.) Линейная система с постоянными коэффициентами [уравнение (3.1)] в диcкpeтнo виде представляется следующим образом

x[(k+l)h]=(l + h-aiy)-Xi(kh) + ... + h-ay„-x„(kh) + h-byyUy(kh) + ... + h-by-u,.(kh)

x„[(k + 1 = (1 -ь A a„i) .г, (kh) + ... + h- a„,, x„(kh) +h-b„y- (kh) + ... + h- Ь„,.-иДЬ)

бозначениях это можно записать

х(М) + А • <kh) + А • В • u(kh) - (I + А • А) • х(Щ + А • В • n(kh)

v\{k 1 / -I

„ „ линеаризированной системы аппроксимация (3.8) не обяза-

для -линейной . дифференциальные уравнения можно решить анали-тельна. °°\:уощие уравнения для дискретного представления можно полу-чески, соотвд Предполагается, что сигнал управления u(t) остается ть из УР"д моментами выборки, т. е. система включает в себя схему удержа-Дйс"кретную модель можно записать в матричном виде

х[(/(; + 1)/г] = Ф-х(кЬ) + Г-и(/г) (3.9)

е ф - матрица размерностью п X и, а Г - матрица размерностью п X г. Связь между матрицами А и В и матрицами Ф и Г следующая

(А)2

ти чить

(аа)2

где I - единичная матрица.

Преобразование между матрицами для непрерывной и дискретной моделей можно выполнить с использованием стандартных программ. Аппроксимация конечными разностями Ф ~1 + h - АиТ ~ h-B стремится к точному решению при малых значениях интервала выборки h. Поскольку измерения происходят периодически, то уравнение (3.2) для дискретной модели справедливо только в моменты выборки

y(kh) = С • x(kh) + В u(kh)

(3.10)

Решение уравнений дискретной модели на цифровой ЭВМ получается довольно просто: решения x(kh) в последовательные моменты времени вычисляются шаг за шагом на основе разностных уравнений.

3-4.2. Отношения вход/выход и оператор сдвига

В дискретных моделях, так же как и в непрерывных, часто удобно напрямую связать вход процесса и с его выходом у, в особенности, когда регулятор записан в такой *е форме, т. е. он оперирует выходной величиной процесса для подсчета управляю-•Дего сигнала. Дискретно-временной анализ проще выполнить при помощи операто-<Двига q (shift operator). Эффект от применения оператора q к зависящей от време- переменной z(t) такой же, что и сдвиг по времени на интервал h - его также называют сдвигом вперед (fonmrd shifting)

q-z(kh) = z[(k+\)h\

(3.11)

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




[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [ 14 ] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90]

0.0106