gpt4 book ai didi

ros - X、Y 和 Z 在 geometry_msgs 中的含义 ROS 中的 Twist 消息

转载 作者:行者123 更新时间:2023-12-03 18:29:56 25 4
gpt4 key购买 nike

我正在尝试使用以下公式将 Twist 转换为左右轮的速度:

float speed_wish_right = (cmd_vel.angle*WHEEL_DIST)/2 + cmd_vel.speed;
float speed_wish_left = cmd_vel.speed*2-speed_wish_right;
Twist.angular是一个向量 [x, y, z],所以 Twist.linear . x、y、z 在向量中是什么意思,如何从两个向量中获得角度和速度?

这是我在 Arduino 中的回调函数
const int WHEEL_DIST = 16;
void velCallback(geometry_msgs::Twist vel) {
float linear = vel.linear.x;
float angle = vel.angular.z;

float speed_wish_right = (angle * WHEEL_DIST) / 2 + linear;
float speed_wish_left = linear * 2 - speed_wish_right;
motors.setSpeeds(speed_wish_left, speed_wish_right);
}

最佳答案

考虑到您在某个空间中,则有 3 个轴 - x , yz它们相互垂直,它们的交点称为原点(x = 0,y = 0,z = 0)。这可以是一个引用框架,即您可以定义各种点和方向 w.r.t.他们。x , y , 和 zTwist.linearx 中的线速度, yz方向 w.r.t.那个参照系。
同样,x , y , 和 zTwist.angular是关于 x 的角速度, yz方向分别为 w.r.t.相同的参照系。
因为你有一个地面机器人,你的角速度很可能是 z即机器人的转弯速度。你的线速度将主要在 x即机器人的直线移动速度。至少 Turtlebot 2 就是这种情况。

关于ros - X、Y 和 Z 在 geometry_msgs 中的含义 ROS 中的 Twist 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50976281/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com