реклама на сайте
подробности

 
 
> Как вычислить проекцию вектора, Помогите разобраться с геометрией
Impartial
сообщение Jan 3 2011, 17:18
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 11-06-10
Пользователь №: 57 871



Дана проекция вектора на плоскую прямоугольную систему координат X,Y.
Как вычислить проекцию этого вектора на плоскую систему координат с тремя осями А,В,С сдвинутыми на 120 градусов.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Jan 3 2011, 17:45
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Набираете в строке запроса поисковику "векторное управление" и читаете. Вот, например, Векторное управление асинхронными двигателями. Учебное пособие. Усольцев А.А. в виде pdf.
Go to the top of the page
 
+Quote Post
Impartial
сообщение Jan 3 2011, 18:22
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 11-06-10
Пользователь №: 57 871



Я знаком с преобразованием Кларка-Парка, но там идет преобразование неподвижной системы координат во вращающуюся с привязкой к базовому вектору.
Я неправильно задал наверное вопрос.
Вот более подробно.
Есть круглая платформа угол наклона которой управляется тремя катушками расположенными под углом 120 градусов снизу платформы.
Для управление сим устройством получаем проекцию вектора на ось X,Y.
Необходимо получить проекцию этого управления на оси А,В,С.
Go to the top of the page
 
+Quote Post
Diusha
сообщение Jan 4 2011, 03:08
Сообщение #4


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Если я правильно понял вопрос (X,Y, A, B, C - в одной плоскости)

1. Считаем длину вектора: L=корень(x^2+y^2)
x,y - проекции вектора на оси Х и Y

2. Считаем угол между вектором и осью Х:
φ=arctg(y/x), при │х│>=│y│; кроме того, если x<0, то к φ надо добавить еще 180
φ=90-arctg(x/y), при │x│<│y│; кроме того, если y<0, то к φ надо добавить еще 180


3. Определяем углы между каждой из А,В,С и Х:
α≡(A ^ X)
β=α+120
γ=α+240

4. Считаем искомые проекции:
a=L*cos(φ-α)
b=L*cos(φ-β)
c=L*cos(φ-γ)

Сообщение отредактировал Diusha - Jan 4 2011, 04:25
Go to the top of the page
 
+Quote Post
Impartial
сообщение Jan 4 2011, 05:44
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 11-06-10
Пользователь №: 57 871



Цитата(Diusha @ Jan 4 2011, 09:08) *
Если я правильно понял вопрос (X,Y, A, B, C - в одной плоскости)

Да, в одной.
Спасибо!
Если я правильно понял, то если если ось А не тождественна оси Х, то просто добавляем угол сдвига.

Цитата
Умножаем единичный вектор i=(1,0) на матрицу поворота и получаем координаты.


Первый раз было понятнее sm.gif

Набравшись наглости хочу спросить. А как это будет выглядеть в разрезе FPGA и Verilog?
Go to the top of the page
 
+Quote Post
SSerge
сообщение Jan 5 2011, 12:30
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Цитата(Impartial @ Jan 4 2011, 14:44) *
Первый раз было понятнее sm.gif

Первая часть моего сообщения относилась к вопросу как вычислить векторы a, b и c.
Я почему-то решил что они тоже могут вращаться относительно осей X,Y, тогда формализм с матрицами поворота будет не лишним. Сама матрица поворота Rφ выглядит так:
cosφ -sinφ
sinφ cosφ
если вектор u получается из вектора v поворотом на угол φ, то
(ux,uy) = Rφ·(vx,vy)T
(T - это транспонирование, т.е. матрица умножается на вектор-столбец, в результате получается вектор-строка.) А то столбцы в тексте изображать не удобно sm.gif
Цитата
Набравшись наглости хочу спросить. А как это будет выглядеть в разрезе FPGA и Verilog?

Если положение осей A, B, C относительно X,Y не меняется, то компоненты векторов a, b и c постоянные и известны заранее.
Тогда всё сводится к вычислению трёх скалярных произведений V·a, V·b, V·c, всего шесть умножений на константы и три сложения.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
Impartial
сообщение Jan 8 2011, 11:32
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 11-06-10
Пользователь №: 57 871



Спасибо! Разобрался
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 02:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.01419 секунд с 7
ELECTRONIX ©2004-2016