Skip to content

Commit 8b3e738

Browse files
authored
Merge branch 'humble-devel' into test-drones-again
2 parents 3459977 + df6758f commit 8b3e738

5 files changed

Lines changed: 18 additions & 18 deletions

File tree

CustomRobots/turtlebot3/models/turtlebot3/turtlebot3.urdf.xacro

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,26 @@
66
<xacro:arg name="noise_level" default="none"/>
77
<xacro:property name="noise_level" value="$(arg noise_level)"/>
88

9+
<!-- Odometry noise per difficulty (drift std ~ alpha*sqrt(distance)). -->
910
<xacro:if value="${noise_level == 'low'}">
10-
<xacro:property name="a1" value="0.1" />
11-
<xacro:property name="a2" value="0.1" />
12-
<xacro:property name="a3" value="0.05" />
13-
<xacro:property name="a4" value="0.05" />
11+
<xacro:property name="a1" value="0.01" />
12+
<xacro:property name="a2" value="0.01" />
13+
<xacro:property name="a3" value="0.01" />
14+
<xacro:property name="a4" value="0.01" />
1415
</xacro:if>
1516

1617
<xacro:if value="${noise_level == 'med'}">
17-
<xacro:property name="a1" value="0.5" />
18-
<xacro:property name="a2" value="0.5" />
19-
<xacro:property name="a3" value="0.25" />
20-
<xacro:property name="a4" value="0.25" />
18+
<xacro:property name="a1" value="0.05" />
19+
<xacro:property name="a2" value="0.05" />
20+
<xacro:property name="a3" value="0.05" />
21+
<xacro:property name="a4" value="0.05" />
2122
</xacro:if>
2223

2324
<xacro:if value="${noise_level == 'high'}">
24-
<xacro:property name="a1" value="1.5" />
25-
<xacro:property name="a2" value="1.5" />
26-
<xacro:property name="a3" value="0.8" />
27-
<xacro:property name="a4" value="0.8" />
25+
<xacro:property name="a1" value="0.25" />
26+
<xacro:property name="a2" value="0.25" />
27+
<xacro:property name="a3" value="0.25" />
28+
<xacro:property name="a4" value="0.25" />
2829
</xacro:if>
2930

3031
<xacro:include filename="$(find custom_robots)/models/turtlebot3/turtlebot3_gz.urdf.xacro"/>

Industrial/gz_noisy_odometry/src/gz_noisy_odometry/NoisyOdometryPlugin.cpp

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,11 +127,10 @@ namespace custom_plugins
127127
const double ds = wheel_radius_ * (d_right + d_left) / 2.0;
128128
const double dtheta = wheel_radius_ * (d_right - d_left) / wheel_separation_;
129129

130-
// Odometry motion-model noise (Probabilistic Robotics, Ch. 5).
131-
// Translation error grows with distance and heading change; rotation error
132-
// grows with heading change and distance — both accumulate over time.
133-
const double sigma_trans = alpha3_ * std::abs(ds) + alpha4_ * std::abs(dtheta);
134-
const double sigma_rot = alpha1_ * std::abs(dtheta) + alpha2_ * std::abs(ds);
130+
// Motion-model noise: per-tick std scales with sqrt(increment), so drift
131+
// variance grows linearly with travelled distance (step-rate independent).
132+
const double sigma_trans = alpha3_ * std::sqrt(std::abs(ds)) + alpha4_ * std::sqrt(std::abs(dtheta));
133+
const double sigma_rot = alpha1_ * std::sqrt(std::abs(dtheta)) + alpha2_ * std::sqrt(std::abs(ds));
135134

136135
const double ds_noisy = ds + gz::math::Rand::DblNormal(0.0, sigma_trans);
137136
const double dtheta_noisy = dtheta + gz::math::Rand::DblNormal(0.0, sigma_rot);

database/universes.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -310,4 +310,4 @@ CREATE INDEX exercises_universe_name_459df99a_like ON public.universes USING btr
310310

311311
--
312312
-- PostgreSQL database dump complete
313-
--
313+
--
4.48 KB
Loading
4.48 KB
Loading

0 commit comments

Comments
 (0)