
Лекции по моделированию Котов Назарова
.pdf
Стр. 21. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
Математическая модель задана в виде структурной схемы.
Переход к уравнениям состояния проиллюстрируем на следующем
примере:
F(x4 )
u |
|
4 |
b2 |
|
x3 |
1 |
2 |
1 |
x1 |
+ |
x5 a1p x |
|
|
|
x |
||||
- |
p+a2 |
|
b1 |
|
p |
|
p |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
Звено |
a1 p |
представим как a |
1 |
|
a1a2 |
, что равносильно следующему |
||
|
p a2 |
|
|
|
p a2 |
|
|
|
|
|
|
|
|
|
|
||
структурному представлению: |
|
|
|
|
|
|
||
|
|
|
a1 |
|
|
|
|
|
|
|
x5 |
a1a2 |
x6 - |
+ |
x4 |
||
|
|
|
p+a2 |
|
|
|||
|
|
|
|
|
|
Уравнения состояния имеют вид:
x1x2
x3x6x4
x5
x2
x3
F (x4 )
a2 x6 a1a2 x5
a1 x5 x6
u x1
Процедура получения уравнений может быть алгоритмизирована,
например, следующим образом:
Представим структурную схему в виде графа:

Стр. 22. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
n0 |
|
n1 n2 |
n3 |
n4 |
n5 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
- элементарные статические и динамические линейные звенья
- нелинейное звено
Далее, выполняется кодирование схемы:
№ звена |
Тип звена |
Входы |
Параметры |
|
|
|
|
n1 |
<Сумматор> |
n0 – n5 |
|
|
|
|
|
n2 |
<Дин зв.1 пор> |
n1 |
a1 a2 |
|
|
|
|
n3 |
<Нелин. элемент> |
n2 |
F |
|
|
|
|
n4 |
<Интегратор> |
n3 |
н.у. |
|
|
|
|
n5 |
<Интегратор> |
n4 |
н.у. |
|
|
|
|
n1 - n5 – номера блоков
При программной обработке таблицы предполагается, что существует библиотека модулей, выполняющих расчет коэффициентов правых частей для элементарных линейных звеньев. Для нелинейных звеньев осуществляется запись, например, в виде x3=F(x4) тип F - зона насыщения.
В качестве примера перехода от структурной схемы к передаточной функции рассмотрим следующий алгоритм.
Предположим, что структурная схема имеет вид:
x1 x2 |
x3 |
x5 |
|
- |
+ |
W1 |
W3 |
x4 |
|
|
|
|
|
|
|
|
|
W2 |
|
Входной язык для структурного кодирования должен задавать топологию (граф модели), алгоритм преобразования сигналов каждым
элементом.

Стр. 23. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
Необходимо, например, определить W x5 (s)
Запишем уравнения:
x1 x2 x4 0W1x2 x3 0W2 x3 x4 0W3 x3 x5 0
|
|
|
|
|
x |
|
|
|
1 |
1 |
0 1 |
0 1 |
|
|
|||
|
0 |
W1 |
1 0 |
0 |
x2 |
|
|
|
|
x |
|
0 |
|||||
|
|
W 1 |
|
|||||
0 0 |
0 3 |
|
|
|||||
|
|
|
2 |
1 x4 |
|
|
||
0 0 W 0 |
|
|
||||||
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
0 |
W1 |
1 |
0 |
|
|
|
|
1 1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
0 |
0 W2 |
1 |
|
|
W3 |
0 W1 |
0 |
|
|
|
|
|
|
|
|
|
||
x (s) |
|
|
|
|
|
|
|
0 |
0 W3 |
0 |
|
|
|
|
0 0 1 |
|
|
W W |
|
|
W W |
|||||
5 |
|
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
1 |
|
3 |
1 |
|||||
|
|
|
|
1 |
0 1 |
0 |
|
|
1 0 |
1 |
|
|
1 W W |
|
W W |
|||||||||||
|
|
|
|
|
||||||||||||||||||||||
x (s) |
|
|
|
|
|
|
|
|
|
|
1 |
|||||||||||||||
1 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
2 |
|
|
1 |
2 |
|
|
|
|
|
|
|
W1 |
1 0 |
0 |
|
|
|
W1 1 0 |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
0 |
W2 |
1 |
0 |
|
|
|
0 W2 |
1 |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
0 |
W3 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 – вычеркнут 5-й столбец; 1 – вычеркнут 1-й столбец В общем случае, если система имеет “к” входов, то математическая
модель может быть представлена в виде:
W·x=0, где W - функциональная матрица размерности (n·[(n+k)); n -
число элементов схемы (число вершин графа).
Если нербходимо, например, определить Wij xi (s) , где xi (s) - один xj (s)
из выходных сигналов, то остальные n-1сигналов полагаются равными 0.
/W(n (n+1))/ |
W |
i |
, |
|
|||
|
ij |
j |
|
|
|
|
где i - вычеркнут i столбец; j - вычеркнут j столбец.
Пример № 2

Стр. 24. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
|
+ |
x1 |
x2 |
|
|
||
- |
|
W1 |
|
|
|
|
|
|
|
x3 |
W1 |
|
|
|
Wx3 ? x1
x |
x 0 |
|
||
|
1 |
3 |
0 |
|
W1x1 x2 |
||||
|
|
|
0 |
|
W2 x2 x3 |
||||
|
1 |
0 |
1 |
|
|
|
1 |
|
|
W1 |
0 |
x 0 |
||
|
0 |
W |
1 |
|
|
|
2 |
|
|
Алгоритм:
1)Рассматривается связь по координате x1(s)
2)“1” соответствует удалению первой строки
W |
1 |
0 |
|
|
1 |
W2 |
|
|
0 |
1 |
3) Далее, алгоритм аналогичен предыдущему.
|
|
W |
1 |
|
|
||
3 |
|
|
1 |
|
|
|
|
|
|
0 |
W2 |
W W |
|||
1 |
|
1 |
0 |
||||
|
1 |
2 |
|||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
W2 |
1 |
|
|
Вычисление определителей осуществляется по различным методам,
например, способам приведения функциональной матрицы к треугольному виду; но здесь кроме этого необходима работа с полиномами.
Но можно предложить и другой алгоритм:

Стр. 25. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
det aij ( p) b0 b1 p b1 p2 ... bm pm (*) i 1, 2,..., n
j 1, 2,..., n
Задавая “m+1” различных значений “p” и вычисляя значения определителя, получим “m+1” линейных уравнений относительно bi, i=0,1,...,m. Решив эти уравнения, получим коэффициенты полинома в (*)
С помощью матрицы W могут быть записаны уравнения в нормальной форме Коши, но уже не только для линейных систем.
Моделирование во времени динамических систем
Особенности моделирования динамических систем
Особенности моделирования динамических систем определяются общими проблемами численного решения интегро-дифференциальных и алгебраических уравнений: выбор метода; шага интегрирования; обеспечение устойчивости и точности решения и т.д.
Но существуют и проблемы, определяемые спецификой динамических систем рассматриваемого класса (РТС, их элементы, системы управления):
жесткость систем - большой разброс постоянных времени. Практика показывает, что явление жесткости в реальных сложных системах - скорее правило, чем исключение. Это способствовало развитию методов интегрирования жестких систем, к которым, прежде всего, относятся неявные методы.
В качестве иллюстрации жестких систем рассмотрим следующий пример:
1(t) |
|
|
1 |
x(t) |
D(p)=10-4 p2+p+1 |
|
||||||
+- |
|
D(p)=0 → 10-4 p2+p+1=0 |
||||||||||
|
- 4 |
|||||||||||
|
p(10 |
|
|
|
|
|
|
|
|
|
||
|
|
p+1) |
|
λ1 |
≈ -1, λ2 ≈ -10 |
4 |
. |
|
||||
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
1 |
1 1; |
2 |
1 |
10 4 |
||
|
|
|
|
|
|
1 |
|
|
2 |
|
||
|
|
|
|
|
|
|
|
|
|
|
Выходной сигнал выражается формулой:

Стр. 26. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
x(t) 1 C1e t C2e 104 t C2 C1
Решение практически определяется составляющей e-t, другая составляющая мала и быстро затухает. Несмотря на это, при интегрировании явным методом шаг следует выбирать порядка 10-4;
Наличие в моделях неоднозначных, разрывных и других характеристик, требующих специальных алгоритмов вычисления.
Например,
M |
+- |
1 |
a |
|
Jp |
|
|
|
|
|
При исследовании подобной модели необходимо часто моделировать динамический процесс, схожий со скользящим режимом, характерным для такой системы в реальности, что при вычислениях приводит к дроблению шага и фактическому прекращению моделирования.
Необходимость моделирования по уравнениям состояния,
передаточным функциям и структурно-функциональным схемам. Сложность математического описания динамики РТС и их элементов, в частности,
многозвенных манипуляторов.
Численное решение дифференциальных уравнений.
x F(x,U,t) |
при x(0) x0 |
Это получение последовательности векторов, аппроксимирующих истинное решение на временной сетке
i
ti t0 hj ,
j 1

Стр. 27. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
где hj – j-ый шаг интегрирования. Шаг интегрирования выбирается из заданной точности. Ошибка складывается из двух составляющих:
ε = εметод + εвычисл
определяется неточностью метода и уменьшается при уменьшении h, при h 0 εметод=Сhk, где С - const; k - порядок метода;
определяет, во скольких точках в пределах шага [ti; ti+1] вычисляются правые части уравнений при нахождении Xi+1. Например, методы второго порядка реализуются в две стадии с одной промежуточной точкой
ti +bh
ti ti+1
h
εвычисл. |
определяется неточностью вычислений (ограниченность |
||||||
разрядной сетки). |
|
|
|
|
|
||
εвычисл. |
увеличивается при уменьшении h. |
|
|
||||
e |
|
|
|
|
Одним |
из |
факторов, |
|
|
|
|
ограничивающим шаг интегрирования |
|||
|
|
|
|
|
|||
|
|
|
|
|
- устойчивость численного метода. |
||
e |
|
|
|
|
Неустойчивость |
– катастрофическое |
|
|
|
|
|
|
|
|
|
min |
|
|
|
|
увеличение ошибки (при h > hmax). |
||
|
|
|
|
|
|||
|
|
|
|
h |
Устойчивость |
численного |
|
|
h |
hmax |
|
|
|
|
|
|
|
|
метода существенно зависит от того, |
||||
|
|
|
|
|
|||
|
|
|
|
|
является ли он явным или неявным. |
||
Явные методы используют экстраполяционные формулы, например, |
|||||||
метод Эйлера: |
|
|
|
|
|
|
|
xi 1 xi |
F (x ,u |
,t |
) |
|
|
|
|
h |
i i 1 |
i 1 |
|
|
|
|
|
|
|
|
|
|
|

Стр. 28. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
Неявные - интерполяционные:
xi 1 xi F (xi 1,ui 1,ti 1 ) . h
При реализации неявных методов необходимо на каждом шаге интегрирования решать систему алгебраических уравнений относительно
вектора xi+1, а это сопряжено с большими вычислительными затратами.
Если, например, рассматривается уравнение x Ax, x(0) x0 , то
простой метод Эйлера (явный и неявный) дает соответственно следующие решения:
xi 1 xi |
Ax x |
(E hA)x ; |
|||
|
|||||
h |
i |
|
i 1 |
|
i |
|
|
|
|
|
|
xi 1 xi |
Ax |
|
x |
|
(E hA) 1 x ; |
|
1 |
|
|||
h |
i |
i 1 |
i |
||
|
|
|
|
|
Во втором случае необходимо обращение матрицы (E-hA), что вносит дополнительные вычислительные затраты. Для их уменьшения используются, в частности, методы линейной алгебры, оперирующие с разреженными матрицами.
Преимущества неявных методов с точки зрения устойчивости, могут быть проиллюстрированы на следующем простом примере:
Необходимо выполнить численное решение уравнения: x ax, (a 0; x(0) x0 )
Точное аналитическое решение:
x(t) x0e at
Если решать явным методом Эйлера, то
xi 1 xi axi ; xi 1 (1 ah)xi ; h
1 1 ah 1; 0 ah 2; h a2 .
При неявном:

Стр. 29. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
|
|
xi 1 xi |
ax |
; x |
|
|
xi |
; |
||
|
|
|
|
|
|
|
||||
|
|
|
h |
|
i 1 |
i 1 |
1 |
ah |
||
|
|
|
|
|
|
|||||
1 |
1 |
|
1 |
это условие выполняется при h 0. |
||||||
|
||||||||||
1 ah |
Таким образом, второй подход является менее критичным по отношению к выбору шага интегрирования.
Методы интегрирования могут быть одношаговые и многошаговые;
последние используют информацию, полученную на предыдущих шагах интегрирования. Одношаговые - только с предыдущего. Многошаговые рекомендуется применять когда правые части представлены гладкими функциями и решение надо получить с высокой точностью. В других случаях - одношаговые.
Для выбора шага интегрирования можно использовать следующую процедуру. Интегрирование от точки ti до точки ti+1 = ti + hi выполняется
дважды: с шагом hi и hi/2, решения соответственно будут xˆi 1 и xi 1 .
x |
|
|
|
xi+1 |
|
|
|
xi+1 |
|
|
|
xi |
|
|
|
|
h/ 2 |
|
|
|
h/ 2 |
|
|
ti |
ti+1 |
ti+1 |
t |
Далее, вычисляется локальная ошибка
e |
(xˆi 1 xi 1 ) |
и выполняется оценка относительной локальной |
|
(2k 1) |
|||
|
ошибки:

Стр. 30. Моделирование и исследование робототехнических систем. Авторы: Котов Е.А., Назарова А.В.
|
|
|
|
|
|
|
e |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
x |
|
x |
|
|
|
|
|||
|
|
|
|
|
|||||||||
|
|
|
|
|
i 1 |
|
|
i |
|
|
|
|
(k - порядок метода).
Если:
1) |
доп , то hi / 2 и повторяются вычисления из точки ti |
|||
2) |
|
допk , то 2hi |
||
|
|
|
2 |
|
3) |
доп |
|
доп , то hi |
|
2 |
k |
|
||
|
|
|
|
Эта процедура контроля ошибки является наиболее универсальной,
поскольку применима к любому методу интегрирования, но требует дополнительных вычислительных затрат.
Моделирование систем по уравнениям состояния.
Сводится к численному решению дифференциальных уравнений:
x f (x,U,t) |
при x(0) x0 |
Здесь огромное количество алгоритмов и программ, ориентированных именно на такую постановку задачи.
Например, метод Рунге-Кутта 2-го порядка:
x |
x |
2 |
hf (x ,u ,t |
) |
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
||||||||
i |
2 |
i |
|
3 |
|
i |
i i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
x |
1 |
hf (x ,u ,t ) |
3 |
hf (x |
|
,u |
|
,t |
|
) |
||||||
|
|
|
|
|
|||||||||||||
i 1 |
i |
4 |
|
|
i |
i |
i |
|
4 |
i |
2 |
i |
2 |
i |
2 |
|
|
|
|
|
|
|
|
|
|
|
3 |
3 |
3 |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
β = 2 / 3
Моделирование линейных динамических систем по передаточным функциям.
Постановка задачи заключается в определении y(t) из условия: