diff --git a/gazebo/omniRobot_plugin/src/gazebo_omni_drive.cpp b/gazebo/omniRobot_plugin/src/gazebo_omni_drive.cpp
index 8e96de4..dffe973 100644
--- a/gazebo/omniRobot_plugin/src/gazebo_omni_drive.cpp
+++ b/gazebo/omniRobot_plugin/src/gazebo_omni_drive.cpp
@@ -393,11 +393,19 @@ void GazeboOmniRosDrivePrivate::UpdateWheelVelocities()
double va = target_rot_;
for (unsigned int i = 0; i < num_wheel_pairs_; ++i)
- {
+ {
+ /*
desired_wheel_speed_[2 * i + NORTH] = (vx + vy - va * (wheel_w_separation_[i] + wheel_l_separation_[i]) / 2.0) / wheel_diameter_[i] * 2;
desired_wheel_speed_[2 * i + WEST] = (vx - vy - va * (wheel_w_separation_[i] + wheel_l_separation_[i]) / 2.0) / wheel_diameter_[i] * 2;
desired_wheel_speed_[2 * i + SOUTH] = (vx + vy + va * (wheel_w_separation_[i] + wheel_l_separation_[i]) / 2.0) / wheel_diameter_[i] * 2;
desired_wheel_speed_[2 * i + EAST] = (vx - vy + va * (wheel_w_separation_[i] + wheel_l_separation_[i]) / 2.0) / wheel_diameter_[i] * 2;
+ */
+ double wl = va * (wheel_w_separation_[i] + wheel_l_separation_[i]) ;
+ desired_wheel_speed_[2 * i + NORTH] = (-wl - vy) / wheel_diameter_[i] * 2;
+ desired_wheel_speed_[2 * i + WEST] = (-wl + vx) / wheel_diameter_[i] * 2;
+ desired_wheel_speed_[2 * i + SOUTH] = (wl - vy) / wheel_diameter_[i] * 2;
+ desired_wheel_speed_[2 * i + EAST] = (wl + vx) / wheel_diameter_[i] * 2;
+
}
}
diff --git a/src/ezbot_descr_simul/description/robot_core.xacro b/src/ezbot_descr_simul/description/robot_core.xacro
index 3c93e84..d4003b2 100644
--- a/src/ezbot_descr_simul/description/robot_core.xacro
+++ b/src/ezbot_descr_simul/description/robot_core.xacro
@@ -257,7 +257,8 @@
- 0.01
+ 0
+ 0.02
@@ -300,7 +301,9 @@
- 0.01
+ 0
+
+ 0.02
@@ -343,7 +346,8 @@
- 0.01
+ 0
+ 0.02
@@ -386,7 +390,8 @@
- 0.01
+ 0
+ 0.02