Да, задумка была в том что колесо пассивное поэтому меньше проскальзывает, только если на провод какой нибудь наедет, а по плоскому полу не врёт.
Цитата:
Из за всё того же проскальзывания основных колёс мы не можем определить совершаем ли мы разворот на месте с помощью двух колёс работающих в разные стороны или с помощью отработки только одного колеса и соответственно все радиусы разворота (и расчётные плечи) будут каждый раз разные.
не уловил, почему не можем?
при повороте на месте рояльное колесо двигается по радиусу равному длине между осью ведущих колес и точкой крепления рояльного колеса, при этом линейная скорость вращения рояльного колеса даёт нам угловую скорость вращения платформы
платформа выглядит вот так
forum87/topic15337-105.html#p335776тут в собранном виде
forum87/topic15337-120.html#p336339Вложение:
caster_wheel_kinematics.png [ 49.06 КиБ | Просмотров: 2263 ]
у моей математической модели, я нашёл одну ошибку, я знак терял когда вычислял скорость колеса (она всегда была положительной).
но даже после исправления всё равно врёт, не получается восстановить траекторию, видимо где то в кинематике ошибка, в ней я слабоват
получается следующее, берём линейную скорость рояльного колеса, приводим её к точке на оси между колёс, вот тут возможна ошибка.
я считаю её так
Код:
V=VC*cos(Q)
Theta2=Theta2 + VC*sin(Q) / ( BASE_AF + BASE_FC*cos(Q) )
где VC - линейная скорость рояльного колеса
Q - угол поворота вилки относительно корпуса
BASE_FC - длина вилки
BASE_AF - расстояние между осью ведущих колёс и точкой крепления рояльного колеса к корпусу.
если сравнить с рисунком выше то
Theta2 => β - угол поворота платформы в неподвижной системе координат
VC => VF
Q => ψ
BASE_FC => DF
BASE_AF => AD
формула получается такая
Код:
Va=Vf*cos(ψ)
β=β + Vf*sin(ψ) / ( AD + DF*cos(ψ) )
Искомые величины VA и β
при прямолинейном движении
Q = 0
V=VC
Theta2 = const
при повороте появляется ошибка, угловая скорость платформы получается выше чем должна быть, а траектория рояльного колеса опережает траекторию физического колеса
т.е. ошибка где то тут
Theta2=Theta2 + VC*sin(Q) / ( BASE_AF + BASE_FC*cos(Q) )
_________________
R3
forum87/topic15337.html R2 roboforum.ru/forum102/topic13980.html
R4 roboforum.ru/post336339.html#p336339
Делать надо хорошо - плохо получится само!