Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2552.pdf
Скачиваний:
16
Добавлен:
07.01.2021
Размер:
16.85 Mб
Скачать

бирается пункт Fixed step, в правом списке Туре выбирается пункт Discrete, в текстовом поле Fixed step size задается произвольное малое число, например, 0,004, в текстовом поле Stop time задается значение

20,0.

 

 

 

И

 

 

Д

Рис. 31. Сформированная модель

 

А

 

На этом процесс форм рован я модели можносчитать завершенным.

б

 

 

Настройка обновления диаграммы

и

 

 

 

Задание метода обновления диаграммы Stateflow осуществляет-

ся с использованиемСдиалогового окна Chart Properties (рис. 32), которое вызывается с помощью команды Chart Properties меню File окна программного средства Stateflow. Список Update method данного окна содержит три пункта: Triggered or Inherited, Sampled и Continuous.

По умолчанию установлен метод обновления Triggered or Inherited, при котором диаграмма Stateflow обновляется на основании данных, поступающих на входы диаграммы. Как было указано выше, имеются два типа входов — события, которые заставляют диаграмму обновляться при их возникновении, и входные данные, которые заставляют диаграмму обновляться с частотой квантования сигнала.

41

Если входной сигнал является непрерывным, то диаграмма будет обновляться на каждом шаге интегрирования.

Рис. 32. Диалоговое окно Chart Properties

 

 

И

 

Д

А

 

б

 

 

Если установлениметод о новления Sampled, диаграмма будет обновляться черезСпромежуток времени, указанный в текстовом поле Sample time. Этот метод обновления может быть полезен, если необходимо обновлять диаграмму с частотой, отличной от частоты квантования входного сигнала.

Если установлен метод обновления Continuous, диаграмма будет обновляться на каждом шаге интегрирования, включая промежуточ-

ные шаги. Опции Triggered or Inherited и Continuous обеспечивают схожие результаты. Разница между двумя методами в том, что если выбрана опция Continuous, то система Simulink поддерживает дополнительную копию данных диаграммы, что позволяет системе Simulink точнее определять момент пересечения сигналом нулевого значения и, как следствие, более точно производить обновление диаграммы. Если в блоке состояния задан параметр during action, который обеспечивает выход, являющийся функцией текущего входа диаграммы, то следует использовать метод обновления Continuous.

42

 

Диаграммы потоков

 

 

 

 

 

 

 

Программное

 

 

 

средство

 

 

Stateflow обеспечивает возможность

 

 

представления алгебры логики с ис-

 

 

пользованием

диаграмм

 

потоков,

 

 

реализованных посредством состав-

 

 

ных переходов. Данная возмож-

 

 

ность обеспечивает

необходимые

 

 

средства для моделирования стан-

 

 

дартных диаграмм потоков, вклю-

 

 

чая этап принятия решения и вы-

 

 

полнение цикла.

Рассмотрим во-

Рис. 33. Диаграмма потоков, реа-

 

И

 

 

 

 

просы создания диаграмм потоков и

лизующая принятие решения

их элементов.

 

 

 

 

 

 

 

Диаграмма

потоков

может

 

 

Д

 

 

 

 

 

 

 

быть включена в любую диаграмму

 

 

Stateflow. Однако удобнее реализо-

 

 

вать диаграмму потоков как авто-

 

 

номную

подпрограмму.

Основная

 

 

структура блока Stateflow диаграм-

 

 

мы потоков приведена на рис. 33 и

 

 

А34. Вначале при запуске диаграммы

С

 

Stateflow

происходит

переход по

бумолчанию к

стартовому

соедине-

Рис. 34. Диаграмма потокови, реа-

нию. Затем диаграмма потоков вы-

полняется путем вычисления со-

лизующая цикл

 

ставного перехода от стартового со-

 

 

единения

до

конечного

состояния.

Если достигается конечное состояние, каждый последующий запуск диаграммы потоков начинается с внутреннего перехода и прекращается в конечном состоянии. Два главных компонента диаграммы потоков — блок принятия решения (см. рис. 33) и блок цикла (см. рис.

34).

Сегмент принятия решений диаграммы потоков состоит по крайней мере из одного условного перехода и одного безусловного перехода (оператор else). Метка перехода содержит условие (заключенное в квадратные скобки) и, что необязательно, действие условия (заключенное в фигурные скобки). На рис. 33 приведена простая диа-

43

грамма потоков с одним шагом решения. В данной диаграмме каждый раз при инициализации диаграммы Stateflow проверяется значение переменной А. Если А=1, то b=1, в противном случае b=0.

После оператора присваивания в действиях условия ставится точка с запятой. Если точка с запятой отсутствует, то результаты присвоения будут отображаться в командной строке системы MATLAB каждый раз при выполнении диаграммы потоков. Действие условия может содержать множество операторов присвоения, отделенных друг от друга точками с запятой. Условие и действие условия могут разделяться переводом строки, а также операторы присваивания в действии условия могут также быть отделены друг от друга переводами строк (знаки разделителей в виде точек с запятой сохраняются).

нения к самому себе. Этот переход повторяется, пока условие истин-

На рис. 34 приведена структура цикла. Цикл содержит два перехода. Первый переход — ветвь от соединительногоИперехода соеди-

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

но, и на каждой итерации происходитДдействие условия. Когда усло-

Пакет расширенияАSimMechanics

Пакет SimMechanicsбявляется расширением системы имитационного моделированияиSimulink, предназначен для математического моделирования механ ческого движения твердых тел. Основное назначение – этоСмодел рован е пространственных движений твердотельных машин и механ змов на стадии инженерного проектирования с помощью законов теоретической механики. При работе в библиотеке SimMechanics, интегрированной в Simulink, могут быть использованы все возможности системы MATLAB, в частности, добавление к модели механической системы компонентов из других библиотек

Simulink и расширений системы MATLAB. SimMechanics позволяет решать пространственные задачи статики, кинематики и динамики многозвенных механических объектов.

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

44

При использовании SimMechanics вместо того, чтобы выводить математическую модель системы, составляется представление, описывающее компоненты механической системы (тела, шарниры и т.д.). Например, маятник представляется телом, присоединенным шарниром к неподвижному звену – базе (земле). Блоки в библиотеке SimMechanics имеют специальные имена, которые точно описывают их назначение. Вращательный шарнир в маятнике называется Revolute, подвижное звено (тело) – Body, неподвижное звено (земля)

– Ground. Чтобы построить SimMechanics-модель, нужно перенести блоки в окно модели и соединить их вместе. Блоки SimMechanics имеют специальные порты, которые соединяются линиями. Эти соединительные линии не передают данные, а представляют собой ме-

ханические связи между элементами системы. Соединительные линии

 

И

и специальные порты не могут напрямую подключаться к стандарт-

ным блокам Simulink и линиям.

Д

Моделирование SimMechanics-моделей отличается от моделирования обычных Simulink-моделей. При запуске SimMechanics анализирует механическую систему для определения топологии и геометрии механизма. Во время моделирования внешние силы и моменты, прикладываемые к механизму, интегрируются, и состояние механической системы обновляется. Так как модель может содержать ог-

раничения, решатель проверяет все элементы механизма в пределах

допустимых отклонений.

А

Примеры использован я пакета SimMechanics при моделирова-

нии механической с стемыбв приложениях 5, 6, 7 и 8.

Библиотекаиблоков пакета SimMechanics

С

 

Рис. 35. Разделы библиотеки блоков SimMechanics

На рис. 35 показаны разделы библиотеки блоков SimMechanics.

Всего разделов семь: Bodies; Joints; Sensors & Actuators; Force Elements; Constraints & Drivers; Interface Elements; Utilities.

Блоки раздела Bodies

Блок Machine Environment служит для задания внешних факторов, действующих на систему. С помощью этого блока задается век-

45

тор ускорения свободного падения, значение по умолчанию [0 –9,81 0]. Также можно задавать различные параметры моделирования. Блок

Machine Environment соединяется с блоком Ground.

Ground – неподвижная точка, заданная в инерциальной системе координат. В настройках блока указываются координаты этой точки.

Body – твердое тело. Параметрами блока являются масса, тензор инерции, декартовы координаты точек присоединения шарниров, точек приложения сил и моментов (рис. 36).

 

 

 

 

И

 

 

 

Д

 

 

А

 

 

б

 

 

и

 

 

 

С

 

 

 

 

Рис. 36. Вид окна установки параметров блока

Body

Тензор инерции представляет собой матрицу размером 3x3:

 

Jxx

Jxy

Jxz

 

I

 

J yy

 

,

= J yx

J yz

 

 

Jzy

 

 

 

Jzx

Jzz

 

где Jxx, Jyy, Jzz – осевые моменты инерции; Jxy, Jxz, Jyz – центробежные моменты инерции.

46

В табл. 3 приведены формулы для вычисления осевых моментов инерции однородных тел простой геометрической формы.
Таблица 3
Осевые моменты инерции однородных тел

Форма тела

 

 

 

 

 

 

 

 

 

 

Формулы для вычисления

 

 

 

 

 

 

Jxx

 

 

 

 

 

 

 

 

 

Jyy

 

 

 

 

 

 

 

Jzz

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тонкий стержень длиной L

 

 

1/12(m·L2)

 

 

 

1/12(m·L2)

 

 

 

0

вдоль оси Z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сфера радиусом R

 

 

2/5(m·R2)

 

 

 

 

2/5(m·R2)

 

 

 

 

2/5(m·R2)

Цилиндр радиусом R и высотой

1

 

 

2

+

1

h

2

 

1

 

 

 

2

+

1

h

2

 

 

2

h с осью вращения Z

 

4

m R

 

3

 

 

4

m R

 

3

 

 

 

1/2(m·R )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Прямоугольный параллелепи-

 

1

 

m(b2

+ c2 )

 

1

 

m(a2

+ c2 )

 

1

m(a2 + b2 )

пед со сторонами a, b и c вдоль

 

 

 

 

 

 

12

 

 

12

12

осей X, Y и Z соответственно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конус базового радиуса R и

1

 

3

R

2

+ h

2

 

1

 

 

3

R

2

+ h

2

 

 

2

высоты h с осью вращения Z

 

m

 

 

 

 

4

m

5

 

 

 

 

3/10(m·R )

4

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

И

 

 

 

 

 

 

 

Эллипсоид с размерами a, b и c

 

1 m(b2 + c2 )

 

 

 

2 )

 

 

1 m(a2 + b2 )

вдоль осей X, Y и Z соответст-

 

 

 

1 m(a2 + c

 

 

венно

 

 

 

5

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

Д

 

 

 

 

 

 

 

 

 

 

 

 

Добавлять, удалять, изменять порядок точек тела можно с по-

мощью группы кнопок в правойАчасти окна установки параметров.

Флажки в колонке Show port позволяют скрывать порты точек

на блоке Body.

 

б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В колонке Translated from Origin of указывается имя системы

 

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

координат точки, от начала которой отсчитываются координаты текущей точки. Как минимум одна точка должна быть задана в системе координат WORLD или в системе координат ADJOINING. Это необходимо, чтобы связать данное тело с соседними телами.

Система координат WORLD – это инерциальная неподвижная система, связанная с Землей, а система координат ADJOINING связана с шарниром, присоединенным к телу (с частью шарнира, которая связана с рассматриваемым телом).

Каждой точке, где тело через шарнир соединяется с другим телом, должна быть поставлена в соответствие своя система координат CS. Это касается и точек приложения к телу внешних сил и моментов.

47

На вкладке Orientation задаются векторы углов поворота систем координат. По умолчанию углы поворота всех систем приняты нулевыми. В большинстве случаев изменять их не требуется.

Координатные оси любой системы координат соответствуют правой эйлеровой системе координат (рис. 37).

Рис. 37. Расположение осей коор-

динат в SimMechanics

Блоки раздела Joints

Раздел Joints содержит блоки сочленений с различным числом

степеней свободы, которые соединяют между собой блоки Body (блок Ground с блоком Body). Раздел содержит пятнадцать основных блоков сочленений: Prismatic; Revolute; In-plane; Universal; Gimbal; Spherical; Planar; Cylindrical; Bearing; Telescoping; Bushing; Six-DoF; Screw; Weld; Custom Joint (рис 38).

 

 

 

 

И

 

 

 

Д

 

 

А

 

 

б

 

 

и

 

 

 

С

 

 

 

 

Рис. 38. Блоки раздела Joints

Любой блок раздела Joints имеет два обязательных порта входа/выхода, обозначенные индексами B (Base, база) и F (Follower, последующий). Порт B соединяется с блоком Body, представляющим первое тело, а порт F с блоком Body, представляющим последующее тело, которое движется относительно первого. Блокам типа Joint

48

можно добавлять дополнительные порты, которые используются для подключения датчиков (Sensors) и возбудителей (Actuators) из раздела

Sensors & Actuators.

В окне настройки параметров блоков типа Joint отображаются примитивы (элементарные сочленения). Примитивы могут быть трех типов: P (Prismatic) – поступательный примитив; R (Revolute) – вращательный примитив; S (Spherical) – сферический примитив.

Действие блоков раздела Joints основано на векторно-матричном методе, позволяющем определить положения, скорости и ускорения звеньев механической системы.

Матрицы поворота вокруг осей X, Y, Z декартовой системы координат на угол φ записываются следующим образом:

 

 

 

1

0

 

 

0

 

 

 

М x

=

0

cos(ϕ)

sin(ϕ)

 

,

 

 

 

 

 

Д

 

 

 

 

 

0

 

 

 

 

 

 

sin(ϕ)

cos(ϕ)

 

 

 

 

 

А

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos(ϕ)

0 sin(Иϕ)

М y

=

 

0

1

 

0

 

 

,

 

 

 

 

 

0

 

 

 

 

 

 

 

 

sin(ϕ)

 

cos(ϕ)

 

 

 

 

 

 

 

 

 

 

 

 

и

 

 

 

 

 

 

 

 

 

 

cos(ϕ)

sin(ϕ)

0

 

С

z

 

 

 

 

 

 

 

 

 

М

 

б= sin(ϕ)

cos(ϕ)

0

 

.

 

 

 

 

0

 

0

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

Направление вращения определяется по правилу правой руки. Рассмотрим блок Revolute. Это вращательный шарнир, имею-

щий одну степень свободы относительно заданной оси в виде вектора [X Y Z]. Вектор оси вращения может быть задан в инерциальной системе координат WORLD, в системе координат, связанной с первым телом Base (рекомендуется), или в системе координат, связанной с последующим телом Follower.

Например, в настройках блока Revolute задана одна вращательная степень свободы вокруг оси Z (вектор [0 0 1]), тогда его матрицу поворота можно записать в виде (4), а уравнение перехода вектора R из системы координат OF в систему OB можно записать в виде

49

RB = M BFz RF .

Блок Gimbal (карданов подвес) имеет три вращательные степени свободы относительно трёх осей, его матрица поворота записывается следующим образом:

M BF = M BFx M BFy M BFz .

Блоки, обеспечивающие поступательные степени свободы, такие как Prismatic, In-plane и другие, описываются матрицами перемещения следующего типа:

 

 

1

0

0

 

P

= 0

1

0 .

 

BF

 

0

 

 

 

0

1

 

 

 

 

 

Prismatic – поступательный шарнир, обеспечивает одну степень

 

 

А

 

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

которой осуществляется перемещение.

 

 

б

 

 

In-plane

– (в плоскости) обеспечиваетДдве поступательные сте-

пени свободы.

 

 

 

 

Universal – обеспечиваети две вращательные степени свободы. Представляет собой последовательное соединение двух блоков

Revolute. С

Spherical – сфер ческ й шарнир, обеспечивает три вращательные степени свободы. В этом блоке нет явно выраженных осей вращения. В окне настройки указан один примитив типа Spherical с именем S. Такие примитивы не могут быть приведены в движение по отдельным степеням свободы при помощи блоков возбудителей типа Actuator и совершают только свободное движение. Блоки датчиков типа Sensor при подключении к примитиву типа Spherical не могут получить углы поворота вокруг отдельных осей, а способны лишь выдать кватернион поворота тела Follower относительно тела Base.

Planar – шарнир с двумя поступательными и одной вращательной степенями свободы. Ось вращения ортогональна к плоскости, определяемой двумя осями, вдоль которых возможно поступательное перемещение.

50

Cylindrical – цилиндрический шарнир, обеспечивает поворот вокруг заданной оси с одновременным перемещением вдоль этой же оси.

Bearing – шарнир, имеющий четыре степени свободы: три вращательные и одну поступательную. Причем поступательное движение должно следовать после трех поворотов вокруг осей и по направлению совпадать с осью последнего поворота.

Telescoping имеет четыре степени свободы: три вращательные и одну поступательную, но три вращательных примитива R1, R2, R3 заменены одним сферическим S, поэтому этот блок не может быть приведен в движение по отдельным вращательным степеням свободы при

помощи блоков возбудителей типа Actuator. Это не относится к по-

ступательному примитиву P1, который может быть приведен в дви-

жение принудительно.

И

 

Bushing – блок наиболее общего шарнирного сочленения двух

 

Д

тел, обладающего максимально возможными шестью степенями свободы. Обеспечивает три поступательных примитива P1, P2 и P3, а также три вращательных примитива R1, R2 и R3.

Блок Six-DoF выполняет Афункцию, аналогичную блоку Bushing, и имеет шесть степеней свободы, но использует один сферический S- примитив вместо трех вращательныхб примитивов типа R.

Screw (Винт) – этот лок имитирует винтовое относительное движение двух тел иикроме оси вращения винта R1 имеет в качестве дополнительного параметра шаг винтовой передачи Pitch.

Weld – неподвСжное соед нение двух тел.

Custom Joint (пользовательское сочленение) позволяет пользователю самому установить число и порядок примитивов (и степеней свободы) в шарнире, то есть сконструировать собственную цепь примитивов. Число степеней свободы не может быть больше максимально возможного – шести. При конструировании доступны все прими-

тивы всех типов: P (Prismatic); R (Revolute); S (Spherical).

В разделе Joints присутствуют два подраздела: Disassembled Joints (разобранные сочленения) и Massless Connectors (безынерционные соединители), которые рассматриваются далее.

Блоки подраздела Disassembled Joints

Подраздел разобранных сочленений Disassembled Joints (рис. 39) содержит набор сочленений, которые SimMechanics автоматически собирает в начале моделирования так, чтобы они удовлетворяли сборочным ограничениям, определяемым типом шарнира. Использова-

51

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

Рис. 39. Блоки подраздела Disassembled Joints

Всего в подразделе есть четыре разобранных сочленения: Disassembled Prismatic; Disassembled Revolute; Disassembled Cylindrical; Disassembled Spherical. Разобранные сочленения отличаются от аналогичных собранных числом задаваемых осей. Собранный элементарный примитив имеет только одну ось поступательного движения, или одну ось вращения, или одну сферическую точку. Разобранный поступательный или вращательный примитив имеет две оси поступа-

тельного движения или вращения: одну для тела базы (Base) и другую

 

 

Д

 

для тела последователя (Follower). Разобранный сферический прими-

тив также имеет две точки.

А

 

Все разобранные сочленения могут использоватьсяИ

только в за-

крытых контурах механизма. Каждый закрытый контур может содер-

б

 

 

жать только одно разобранное сочленение.

 

Перед запуском моделирования SimMechanics осуществляет

и

 

 

 

сборку механизма и может перемещать тела, связанные разобранны-

ми сочленениями з х поз ций, чтобы собрать эти

сочленения.

Можно запретить SimMechanics передвигать тела в процессе сборки, для этого необходСмо спользовать блоки начальных условий сочленений Joint Initial Condition, в которых определяется начальное положение тел, зафиксированное во время сборки.

Из рис. 40 понятно назначение разобранных сочленений.

а)

б)

в)

г)

Рис. 40. Разобранные сочленения: а) Disassembled Prismatic; б) Disassembled Revolute; в) Disassembled Cylindrical; г) Disassembled Spherical

52

Блоки подраздела Massless Connectors

Безынерционные соединители упрощают моделирование механизмов, которые используют очень легкое тело для того, чтобы соединить два сравнительно массивных тела (рис. 41).

Каждый безынерционный соединитель является эквивалентом двум сочленениям, чьи соответствующие оси разделены фиксированным расстоянием. Возможно задание расстояния между осями и различного направления осей. Пространство между двумя примитивами считается соединенным жестким стержнем нулевой массы. Датчики типа Sensor или возбудители типа Actuator не могут быть подключе-

ны к блокам Massless Connectors.

 

 

 

И

 

 

Рис.41. Блоки подраздела Massless Connectors

 

 

 

Д

 

Из рис. 42 понятно назначение безынерционных соединителей.

а

и

А

 

в

 

 

 

Рис. 42. Безынерц онные соединители: а – Revolute-Revolute;

 

С

 

 

 

 

б – Revoluteб-Spherical; в – Spherical-Spherical

 

 

Блоки раздела Sensors & Actuators

 

Блоки из раздела Sensors & Actuators (рис. 43) можно сгруппировать по типу блоков, к которым они подключаются:

1. Измерители и возбудители движения тел: Body Actuator; Body Sensor; Variable Mass & Inertia Actuator. Возбуждение движения или снятие информации происходит в той точке тела, к порту которой присоединен соответствующий блок раздела Sensors & Actuatorsю.

2. Измерители и возбудители движения шарниров: Joint Actuator; Joint Sensor; Joint Initial Condition; Joint Stiction Actuator.

3. Измерители и возбудители движения ограничителей и неста-

ционарных связей: Driver Actuator; Constraint & Driver Sensor.

Body Actuator – привод тела. Входным сигналом блока является вращающий момент или сосредоточенная сила, прикладываемая к ха-

53

рактерной точке тела. Значение силы или момента подается в виде векторного сигнала [X; Y; Z], для этого могут использоваться обыч-

ные Simulink-блоки.

Рис. 43. Блоки раздела Sensors & Actuators

Body Sensor – датчик тела. ВыходнымиИсигналами блока являются значения линейного или углового перемещения, скорость и/или ускорение определенной точки тела в заданной системе координат. Для выбора измеряемых параметровДнужно отметить соответствующие флажки в окне настройки блока. Измеряемые параметры могут быть объединены на выходе в векторА, для этого нужно отметить фла-

жок Output selected parameters as one signal.

Блок Variable Massб& Inertia Actuator позволяет изменять мас-

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

Joint Actuator – пр вод шарнира. Входным сигналом блока является вращающий момент или сила, прикладываемая к отдельной степени свободы шарнира. Если выбран вид возбуждения Motion, то относительное движение частей примитива должно быть задано в виде векторного сигнала Simulink [перемещение; скорость; ускорение]. В случае силового возбуждения на вход подается скалярный сигнал.

Joint Sensor – датчик шарнира. Выходными сигналами блока являются значения линейного или углового перемещения, скорость и/или ускорение для отдельной степени свободы шарнира. Для выбора измеряемых параметров нужно отметить соответствующие флажки.

Joint Initial Condition задает начальное относительное положение и начальную относительную скорость двух частей элементарных примитивов типа R (Revolute) или типа P (Prismatic) шарнира. При помощи одного блока Joint Initial Condition можно задать начальные условия для нескольких примитивов шарнира, к которому он под-

54

ключен. Выбор примитивов осуществляется флажками в колонке Enable окна настройки блока. Это значит, что начальные условия задаются по отдельным степеням свободы шарнира. Сферические примитивы типа S не могут быть инициализированы при помощи блока

Joint Initial Condition.

Joint Stiction Actuator позволяет моделировать в оси отдельного примитива шарнирного сочленения силы вязкого и сухого трения. Действие блока не распространяется на сферические примитивы типа S. В настройках блока задаются: примитив; порог относительной скорости, ниже которой шарнир блокируется силами статического трения. На вход блока должны подаваться в виде скалярных сигналов: внешняя сила или момент; сила или момент кинетического трения;

нижний предел статического трения; значение статического трения;

верхний предел статического трения.

И

 

Driver Actuator привод блоков нестационарных связей типа

 

Д

Driver. На вход блока должен подаваться вектор [перемещение; ско-

рость; ускорение].

Constraint & Driver Sensor может быть подсоединен к блокам стационарных связей типа ConstraintАи к блокам нестационарных связей типа Driver. Они измеряют момент силы или силу реакции в связи.

Блокибраздела Force Elements

Раздел содержит два лока: Body Spring & Damper; Joint Spring & Damper. Эти блокиимоделируют упруго-вязкие элементы. К блокам рассматриваемого раздела не могут ыть подключены датчики и при-

воды из разделаСSensors & Actuators.

Body Spring & Damper моделирует соединение двух точек двух тел упруго-вязким элементом. При изменении расстояния между точками двух тел (к портам которых присоединен блок Body Spring & Damper) изменяется сила F, прикладываемая к телам в заданных точках, но с противоположным направлением, согласно третьему закону Ньютона. Сила направлена вдоль линии, соединяющей точки.

Сила F складывается из силы упругости, пропорциональной смещению расстояния между точками r от расстояния равновесия r0, и силы вязкого трения, пропорциональной относительной скорости двух точек v:

F = −k (r r0 ) b v,

где k – коэффициент упругости; b – коэффициент вязкого трения.

55

Значения коэффициента упругости Spring constant k, коэффициента вязкого трения Damper constant b и расстояние равновесия Spring natural length r0 задаются в настройках блока.

Блок Body Spring & Damper не обеспечивает никаких степеней свободы, поэтому его подключение выполняется параллельно с соединением блоков Body через шарнир типа Joint (рис. 44).

 

Д

А

Рис. 44. Пример подключения блока BodyИSpring & Damper

Joint Spring & Damper моделирует соединение двух частей

б

 

примитива шарнира типа Joint, к которому он подключен. Joint Spring

& Damper прикладывает силу или момент не к двум точкам тел, а к двум частям прим ит ва (элементарного сочленения вращательного типа R или поступательного т па P) шарнира. Один такой блок может возбуждать несколько пр м т вов шарнира, к дополнительному порту которого он присоединен. Выбор возбуждаемых примитивов производится в окне настройки параметров блока. Также в окне настрой-

ки должны быть заданы значения коэффициента упругости Spring

constant k, коэффициентаС

вязкого трения Damper constant b и линейно-

го или углового расстояния равновесия между частями примитива

Spring Offset x0.

Блоки раздела Constraints & Drivers

Блоки раздела Constraints & Drivers (рис. 45) позволяют моделировать стационарные и нестационарные ограничения на перемещения между телами.

Ограничения, не зависящие от времени, являются стационарны-

ми. Блоки стационарных связей: Parallel Constraint; Point-Curve Constraint; Gear Constraint. К ним нужно подключать датчики Constraint & Driver Sensor.

56

Ограничения, изменяющиеся как функция времени, являются нестационарными. Блоки нестационарных связей: Distance Driver; Angle Driver; Linear Driver; Velocity Driver. К ним нужно подключать приводы Driver Actuator, чтобы реализовать изменение во времени. В случае если блок Driver Actuator не будет подключен к дополнительному порту блока типа Driver, то будет моделироваться стационарная связь. Также возможно подключение датчиков Constraint & Driver Sensor.

Рис. 45. Блоки подраздела ConstraintsИ& Drivers

нат, одна из которых связана с ведущимДтелом (Base), а другая с ведомым телом (Follower). Во время движения заданные оси остаются параллельны друг другу.

Point-Curve ConstraintибограничиваетА движение точки в теле Base таким образом, что ы расстояние от этой точки до кривой в теле Follower былоСпостоянным. Кривая определяется сплайнинтерполяцией заданных опорных точек в теле Follower. Координаты опорных точек считаются заданными в той системе координат, к порту которой на блоке Body подключен порт F блока Point-Curve Constraint. В качестве параметров блока выступают три вектора [X0,

Parallel Constraint задает связь двух осей двух систем коорди-

X1, ..., XN+1]; [Y0, Y1, ..., YN+1]; [Z0, Z1, ..., ZN+1], задающие координаты опорных точек кривой.

Gear Constraint позволяет моделировать обкат двух тел подобно зубчатому зацеплению двух зубчатых колес с заданными радиусами делительных окружностей. Передаточное отношение определяется в виде отношения диаметров делительных окружностей. В параметрах блока задаются радиусы делительных окружностей ведущего тела Base и ведомого тела Follower.

Distance Driver позволяет изменять расстояние между двумя точками тел Base и Follower согласно временной зависимости, зада-

ваемой блоком Driver Actuator.

57

Angle Driver позволяет изменять угол между двумя указанными осями систем координат, связанных с телами Base и Follower, согласно временной зависимости, задаваемой блоком Driver Actuator.

Linear Driver изменяет проекцию расстояния между двумя точками тел Base и Follower на указанную ось инерциальной системы координат согласно временной зависимости, задаваемой блоком Driver

Actuator.

Velocity Driver управляет линейной комбинацией спроецированных линейных или угловых скоростей двух точек тел Base и Follower на выбранную ось заданной системы координат согласно временной зависимости, задаваемой блоком Driver Actuator.

Блоки раздела Interface Elements

В разделе Interface Elements два блока: Prismatic-Translational Interface и Revolute-Rotational Interface. Эти блоки предназначены для подключения механических элементов Simscape.

Блоки раздела Utilities

Блоки из этого раздела выполняют вспомогательные функции.

Всего в разделе Utilities три блока (рис. 46): Continuous Angle; Convert

 

 

 

 

 

И

from Rotation Matrix to Virtual Reality Toolbox; Mechanical Branching

Bar.

 

 

 

Д

 

 

 

 

 

 

 

А

 

 

Р с. 46. Блоки раздела Utilities

 

 

б

 

 

 

Блок Continuous Angle используется совместно с блоком датчи-

 

и

 

 

 

 

С

 

 

 

 

ка Joint Sensor и позволяет получить правильное значение угла относительного поворота двух частей вращательного примитива шарнира, если угол поворота превышает значение ±π радиан. Использование в этих случаях только блока Joint Sensor вызывает разрыв измеряемого значения угла в 2π радиан. На вход блока Continuous Angle нужно подать угол Angle и скорость изменения угла Rate.

Блок Convert from Rotation Matrix to Virtual Reality Toolbox

используется для визуализации движений звеньев механизма в процессе моделирования в пакете Virtual Reality Toolbox.

Mechanical Branching Bar нужен для объединения нескольких линий, соединяющих механические блоки тел Bodies, сочленений Joints или связей Constraints & Drivers с датчиками и возбудителями

Sensors & Actuators в одну линию.

58

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]