odom: fixing odom calculation for scout mini omni

This commit is contained in:
Ruixiang Du
2021-12-08 15:55:20 +08:00
parent 10ced09855
commit 02fe21e5dd
4 changed files with 5 additions and 5 deletions

View File

@@ -161,8 +161,8 @@ class ScoutMessenger {
lateral_speed = 0;
}
double d_x = linear_speed * std::cos(theta_) * dt;
double d_y = (linear_speed * std::sin(theta_) + lateral_speed) * dt;
double d_x = (linear_speed * std::cos(theta_) - lateral_speed * std::sin(theta_)) * dt;
double d_y = (linear_speed * std::sin(theta_) + lateral_speed * std::cos(theta_)) * dt;
double d_theta = angular_speed * dt;
position_x_ += d_x;

View File

@@ -15,7 +15,7 @@
<arg name="simulated_robot" default="false" />
<arg name="odom_topic_name" default="odom" />
<node name="scout_base_node" pkg="scout_base" type="scout_base_node" output="screen">
<node name="scout_base_node" pkg="scout_base" type="scout_base_node" output="screen" launch-prefix="valgrind">
<param name="is_scout_mini" type="bool" value="$(arg is_scout_mini)" />
<param name="is_omni_wheel" type="bool" value="$(arg is_omni_wheel)" />
<param name="port_name" type="string" value="$(arg port_name)" />