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

Аллюр "медленная рысь" (трот)

Применимость

Аллюр "медленная/тихая рысь", или трот, является самой быстрой походкой лошади, при которой возможно обеспечить равновесие в каждый момент времени. В принципе, только трот и шаг обладают таким свойством, так что оба варианта должны быть реализованы для SweetieBot.

В отличие от шага для обеспечения устойчивости при тихой рыси требуется иметь значительную площадь нижней поверхности копыт. Как Proto2, так и Proto3 соответствуют этому требованию.

Идея реализации (кратко)

Аллюр представляет собой перемещение с попарной сменой ног, сперва на земле находятся например левая задняя и правая передняя, в это время левая передняя и правая задняя перемещаются к новой точке постановки.

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

Требуемые настройки

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

Последнее желательно вот почему:

sweetie-needs-time

как видно на картинке, если мы в дискретной системе управления будем устанавливать в качестве скорости движения мгновенную скорость, мы уйдём с заданной траектории. Это не актуально для позиционного управления, однако при кинематическом управлении будет играть роль.

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

Допущения

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

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

Фазы движения

Ниже перечисленны различные фазы, в которых может находиться нога: вынос -- копыто занесено вперёд по движению и осуществляет постановку на подстилающую поверхность и разгон до скорости движения; опорная (support) -- копыто находится на подстилающей поверхности и обеспечивает движение робота; занос -- копыто выброшено назад, осуществляет остановку по XY и подъём по Z; перенос (transfer) -- копыто переносится по воздуху к следующей точке постановки.

Примечание: возможно объединение фаз выноса, заноса, и переноса в рамках алгоритма.