Как заставить две непрерывные трассы (ступени танка) двигаться с одинаковой скоростью?

12

У меня есть пара Vex 269 Motors, подключенная к Arduino Duemilanove . Эти моторы работают на нескольких Vex Tank Treads . Два двигателя работают как сервоприводы на Arduino, используя сервотеку. Проблема, с которой я сталкиваюсь, заключается в том, что эти две дорожки не поворачиваются с одинаковой скоростью при отправке с одинаковым углом сервопривода. Это очевидно из-за того, что непрерывные гусеницы имеют так много движущихся частей, что трудно получить одинаковые силы трения на каждой гусенице.

Как мне заставить их двигаться с одинаковой скоростью? Должны ли они двигаться с одинаковой скоростью при одном и том же угле сервопривода, независимо от трения, и двигатели Vex 269 просто недостаточно сильны (имеется в виду, что я должен использовать Vex 369 или какой-то другой более мощный двигатель)? Лучше всего делать проб и ошибок достаточно долго, чтобы выяснить, какой угол сервопривода дает равные скорости на каждом? Должен ли я повозиться с треками, пока они не будут иметь почти одинаковые фрикционные движения? Спасибо много!

golmschenk
источник

Ответы:

12

Короткий ответ: вам нужен лучший контроль (обратная связь), чтобы сделать это. Практически, вы никогда не сможете откалибровать систему достаточно точно, чтобы идти прямо на несколько десятков длин тела робота. Как только вы наберете его идеально для одного набора условий, условия окружающей среды или износа изменятся, и вам придется настраивать его снова.

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

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

Часто не очень важно точно, в каком направлении движется ваш бот; скорее, он просто должен прогрессировать в какой-то задаче (следовать за лидером, искать цель и т. д.).

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

Примечание о размещении магнитного датчика

Но почему я должен «позиционировать [магнитный преобразователь] как можно дальше вперед»? Не правда ли, что угол такой же? Ага. Это правда, но величина магнитного поля Земли нет. Вы стоите в другом месте на Земле .

Представь, что твой робот такой же большой, как машина. Если вы сидите в геометрическом центре автомобиля, и автомобиль вращается вокруг вас, ваши координаты на Земле не изменились; только ваше отношение имеет. Теперь , если вы сидите на капоте автомобиля и автомобиль повторяет предыдущее движение, как ваше отношение и ваши координаты изменились. Изменение координат приводит к большей разнице в величине поля Земли, чем только вращение.

Последние несколько лет я работал в команде с доктором Дуайтом Вейхландом из Virginia Tech, возможно, ведущим мировым экспертом в области сверхвысокочувствительных магнитных датчиков. Если бы я кристаллизовал основную часть его работы ( как в этом примере ), я бы сказал, что он всегда стремится к более высоким отношениям сигнал / шум при обнаружении все более мелких величин.

Любое увеличение разницы величин, которое вы можете создать, облегчает жизнь вашего датчика ... и в этом случае вы получаете его бесплатно. По этой же причине ряд роботов DARPA поставили датчик GPS вперед.

DrFriedParts
источник
1
Чтобы расширить превосходный отклик DrFriedParts, загляните в «PID control», чтобы узнать больше о часто используемом типе управления с обратной связью. Вопрос для DrFriedParts: как позиционирование компаса как можно дальше вперед максимизирует отзывчивость? Угол наклона будет одинаковым независимо, хотя я вижу, как он помогает отойти от металлических деталей и двигателей.
ViennaMike
@ViennaMike - Спасибо! =) Я расширил свой ответ, чтобы охватить ваш вопрос более подробно, чем мог бы уместиться в комментарии.
DrFriedParts
Кто-нибудь случайно узнал об опубликованной работе, в которой эксперименты показали, что расположение магнитного датчика на роботе повышает точность ориентации благодаря положению в магнитном поле Земли? Это звучит правдоподобно, но я не уверен, что эффект будет заметен. Я подозреваю, что простое перемещение датчика от другой электроники робота будет иметь больший эффект. Мне было бы интересно увидеть результаты любых экспериментов на этом!
golmschenk
@ViennaMike - ПИД-регулирование двигателей здесь не может быть использовано для решения проблемы. У вас нет обратной связи по положению / скорости / току, поэтому нечего вводить в контур управления ПИД. PID обеспечивает средство для плавного приближения к целевому значению, но у вас нет целевого значения без дополнительной обратной связи о положении робота / дифференциальной скорости вращения двух дорожек (например, вам нужно больше информации, чем робот / сценарий ОП могут предоставлять).
DrFriedParts
@golmschenk - Посмотрите на первый грандиозный вызов DARPA и документы, выпущенные различными университетскими командами о размещении антенны GPS на транспортных средствах (та же концепция) ... или посмотрите документы, имеющие отношение к Veihland. Эффект существенно заметен на скоростях автомобиля или с магнитными датчиками мелкой шкалы. Это заметно практически при любом практическом роботизированном масштабе с GPS.
DrFriedParts