Вопрос о всенаправленном контроле - PullRequest
1 голос
/ 08 июля 2011

Я читаю следующую бумагу,

http://robocup.mi.fu -berlin.de / Buch / omnidrive.pdf

На странице десять вводится формула для генерирования движения для n колес всех видов,


                   −sin θ1 cos θ1 1 
(v1, v2, v3, v4)=   −sin θ2 cos θ2 1   (vx, vy, Rω)
                    ................
                   −sin θn cos θn 1

Из того, что я понимаю, вы берете вектор, в котором вы хотите идти, скажем, направление x без вращения, которое было бы [1 0 0], и умножаете это на sin потому что матрица, тогда вы получите, на сколько должен быть запитан каждый конкретный двигатель. генерировать движение в этом направлении.

Чтобы перепроверить результаты, которые я вычислил для velecoties для [1 0 0], это дает мне [abcd] 4 скорости двигателя, и у меня есть 4 θs, когда я добавляю компоненты каждого колеса sin и cos, я думаю, что получу вернуться к [1 0 0], но я действительно получаю что-то вроде [2.5 0 0]. Что мне было интересно, это я забыл некоторые свойства о матричном умножении? или у меня есть поток в моей логике?

1 Ответ

2 голосов
/ 08 июля 2011

Нет, в этом нет ничего плохого.Рассмотрим простейший возможный случай, когда у робота два колеса поперек друг от друга на одной оси.Чтобы робот двигался вперед со скоростью x, оба колеса должны вращаться со скоростью x, а не x/2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...