АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Ход работы. Ниже будет рассмотрен пример нахождения матрицы сложного однородного преобразования, описывающего последовательность вращений и переносов

Читайте также:
  1. I. Организация выполнения выпускной квалификационной работы
  2. II. Порядок подготовки, защиты и оценки квалификационной работы
  3. II. Работы учеников Уильяма Джеймса: Дж. Дьюи, С. Холла, Дж. Кэттела, Э. Торндайка
  4. II. Рекомендации по оформлению контрольной работы.
  5. II. Требования охраны труда перед началом работы.
  6. II. Требования охраны труда перед началом работы.
  7. II. Требования охраны труда перед началом работы.
  8. III. Истоки психологии в России: работы И.М. Сеченова
  9. III. Общие методические указания по выполнению курсовой работы
  10. III. Требования охраны труда во время работы
  11. III. Требования охраны труда во время работы
  12. III. Требования охраны труда во время работы

 

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

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

Нахождение матрицы простых однородных преобразований размера 4х4 сводится к вычислению косинусов углов между осями (матрица вращения размера 3х3) и заполнению матрицы переноса (размера 3х1), входящую в состав матрицы преобразования.

 

Пример

 

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

a. вращение на угол (ψ+90°) относительно оси x;

b. перенос на a единиц вдоль оси у;

c. перенос на b единиц вдоль оси z;

d. вращение на угол –θ относительно оси y;

e. вращение на угол –φ относительно оси z.

 

1. На рис. 1 показано вращение относительно оси x.

Рис. 1

Составим выражение для матрицы A1 вращения на угол (ψ+90°) относительно оси x:

Первые три строки и столбца матрицы A1 представляют собой матрицу вращения – косинусы углов между осями глобальной (инерционной) и локальной (преобразованной) системы координат. Столбцы матрицы вращения соответствуют осям локальной системы координат x’, y’ и z’ соответственно, строки матрицы вращения – осям глобальной системы координат x, y и z соответственно. Поскольку масштабирование, перенос и перспективная проекция не производятся, элемент, стоящий на пересечении 4-й строки и 4-го столбца равен единице, а оставшиеся элементы 4-й строки и 4-го столбца равны нулю.

 

2. На рис. 2 показан перенос на a единиц вдоль оси у.

Составим выражение для матрицы A2 данного преобразования:


Матрица вращения является единичной, поскольку вращение не происходит. Второй элемент четвертого столбца равен a, поскольку перенос происходит вдоль оси y.

Рис. 2

3. На рис. 3 показан перенос на b единиц вдоль оси z.

Составим выражение для матрицы A3 данного преобразования:


Матрица вращения является единичной, поскольку вращение осей локальной системы координат относительно осей глобальной системы не происходит. Третий элемент четвертого столбца равен b, поскольку перенос Рис. 3 происходит вдоль оси z.

4. На рис. 4 показано вращение относительно оси y.

Составим выражение для матрицы A4 вращения на угол –θ относительно оси y:

 

 

Рис. 4

 

5. На рис. 5 показано вращение относительно оси z.

Составим выражение для матрицы A5 вращения на угол –φ относительно оси z:

 

Рис. 5

6. Получим выражение для матрицы сложного однородного преобразования, используя (2):

 

Некоторые вычисления, необходимые для решения обсуждаемой в этой работе задачи, например, умножение матриц, можно провести на компьютере, например, с использованием языка языка Python[1] [3] и библиотеки SymPy[2].

Для работы необходимо запустить программу IDLE[3].Когда Python установлен в Windows, его можно найти в меню Пуск (Start). Набор пунктов меню может немного отличаться в зависимости от версии, но пункт IDLE запускает среду разработки с графическим интерфейсом, а пункт Python запускает сеанс работы с интерактивной командной оболочкой (консолью). Кроме того, здесь можно увидеть пункты вызова стандартного справочного руководства - Python Manuals.

Чтобы использовать функции SymPy нужно импортировать соответствующую библиотеку, выполнив команду:

>>> from sympy import *

 

Определим символы l1, l2, q1, q2, чтобы использовать их при записи элементов матрицы J:

>>> psi = Symbol('psi') >>> a = Symbol('a') >>> b = Symbol('b') >>> theta = Symbol('theta') >>> phi = Symbol('phi')

Введем матрицы Ai в компьютер:

>>> A1=Matrix([[1,0,0,0],[0,-sin(psi),-cos(psi), 0],[0,cos(psi),-sin(psi),0],[0,0,0,1]]) >>> A2=Matrix([[1,0,0,0],[0,1,0,a],[0,0,1,0],[0,0,0,1]]) >>> A3=Matrix([[1,0,0,0],[0,1,0,0],[0,0,1,b],[0,0,0,1]]) >>> A4=Matrix([[cos(theta),0,-sin(theta),0],[0,1,0,0],[sin(theta),0,cos(theta),0],[0,0,0,1]]) >>> A5=Matrix([[cos(phi),sin(phi),0,0],[-sin(phi),cos(phi),0,0],[0,0,1,0],[0,0,0,1]])

 

Выведем произведение матриц Ai – матрицу сложного однородного преобразования:

>>> print A1*A2*A3*A4*A5

 

 


1 | 2 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)