Webots e-puck 转 90 度
Webots e-puck turn 90 degrees
如何在 Webots 中让 e-puck 机器人向某个方向旋转 90 度?
我尝试使用 wb_robot_step(TIME_STEP)
让机器人旋转一定时间,但我不太明白。
我也在网上看到,我可以使用 InertialUnit 模块来获取机器人在 y 轴上的位置并旋转机器人直到角度正确,但我也没有找到任何相关示例.
有人可以帮忙吗?
这可能对您有帮助:
bool turn90ccw(); // Turn robot 90 degrees ccw in place
只需在需要的地方调用此函数即可。
一个简单的解决方案是使用位置传感器API(https://cyberbotics.com/doc/reference/positionsensor)获取每个轮子的当前位置,然后知道轮子的半径和轮子之间的距离就可以计算每个轮子所需的旋转(您可以再次使用位置传感器测量)。
使用惯性单元确实是一个解决方案,使用惯性单元API(https://cyberbotics.com/doc/reference/inertialunit)可以知道机器人当前的方位,然后旋转直到方位改变90度。
如何在 Webots 中让 e-puck 机器人向某个方向旋转 90 度?
我尝试使用 wb_robot_step(TIME_STEP)
让机器人旋转一定时间,但我不太明白。
我也在网上看到,我可以使用 InertialUnit 模块来获取机器人在 y 轴上的位置并旋转机器人直到角度正确,但我也没有找到任何相关示例.
有人可以帮忙吗?
这可能对您有帮助:
bool turn90ccw(); // Turn robot 90 degrees ccw in place
只需在需要的地方调用此函数即可。
一个简单的解决方案是使用位置传感器API(https://cyberbotics.com/doc/reference/positionsensor)获取每个轮子的当前位置,然后知道轮子的半径和轮子之间的距离就可以计算每个轮子所需的旋转(您可以再次使用位置传感器测量)。
使用惯性单元确实是一个解决方案,使用惯性单元API(https://cyberbotics.com/doc/reference/inertialunit)可以知道机器人当前的方位,然后旋转直到方位改变90度。